看看苹果如何平衡Vision Pro性能和功耗

news2024/11/24 23:03:57

众所周知,Quest 2极为严格的控制SoC运行频率,目的就是保证整机的“散热性能”,说白了就是发热不能严重、风扇噪音不能大。这也是VR头戴设备中降低用户体验的两个关键指标。

对于Quest 2很直接的一个优势就是,用户大多时候听不到狂转的风扇噪音。不过,Meta在最新的v55系统中进一步释放了Quest 2和Quest Pro的频率限制,CPU、GPU都有大幅提升,这些能力可以提升游戏帧率或渲染分辨率,对体验提升都有重要作用。

那么,刚刚发布的苹果Vision Pro是如何进行控制和管理的呢?

根据现场已经体验的媒体反馈,大部分人反馈Vision Pro发热不明显。准确的说,这句话缺少“场景”描述。因为Vision Pro的演示中大部分都还是以2D场景为主,如果在2D场景下还发热明显,那显然不是苹果的实力,更会被大家看笑话。因此,更应该看的是Vision Pro运行3D应用时的发热表现。

这几天我也看了WWDC关于visionOS的相关课程,其中发现visionOS对于App分类有三种:

  • 1. Windows,也就是窗口类2D内容,每个App可拥有多个窗口,支持调整大小;
  • 2. Volume,轻量3D内容,支持2D窗口和3D内容混合显示;
  • 3. Space,专属3D应用,开启后隐藏其它App,并且支持在透视和沉浸模式切换。

visionOS性能优化策略

虽然现在还不能体验,但是我们通过其中一个课程(WWDC2023/10100)了解到visionOS对App功能和性能优化的内容,从中我们了解到更详细的信息。

  • 侧重:visionOS中优先热管理、而非续航;
  • 路径:分析你的App类型,找到优化方法;
  • 目标:降低发热、避免内容占用过大。

和iPhone等移动设备上App的功耗的性能要求不同的是,在Vision Pro和visionOS系统中系统会实时更新,不管你的App的资源占用情况如何。

比如,只要用户移动身体(转头、转身等)、挪动手、转动眼睛等动作,系统就需要实时渲染出每一帧,也就是内容是在实时更新的。再比如,多任务场景中空间算法也实时运行,以此保证用户同时运行多个应用的交互和视觉效果。

和移动平台中优化性能的逻辑有些不同,visionOS中概念和优先级发生了变化:优先考虑散热性能,而不是电池续航或寿命。很显然,这一点上苹果和Meta策略是一致的。

权重方面,不同于iPhone上后台“挂起”影响相对较小,在visionOS中,即便是短暂的暂停、卡顿会对体验破坏性的影响。

visionOS性能优化的核心:渲染、交互、ARKit、音频视频播放、SharePlay、以及避免来自系统层面的停止运行。

渲染方面,visionOS渲染帧率默认为90(支持更高帧率),因此应该避免渲染延迟情况。对比其它平台优先侧重UI和动画流畅性,visionOS考虑的更多比如:

  • 1,应用单独运行时的功耗;
  • 2,在与其它App同时运行时的功耗;
  • 3,在复杂交互时的功耗;
  • 4,在播放视频和音频,如FaceTime、或Personas时的功耗;
  • 5,如果是iOS应用,也需要进一步分析和优化。

当然,里面提到了很多内容涉及渲染优化部分,这里主要提取一些重要的点。

  • 1,渲染目标是确保延迟更低,减少帧丢失。需要从SwiftUI、UIKit,或者RealityKit、Metal分别进行优化。
  • 2,交互方面,因为visionOS刷新率在90Hz或更高,因此最佳输入延迟要<8ms。另外,要尽可能减少内容之间的重叠。
  • 3,SharePlay要避免在多个设备之间同步传输大量渲染工作,避免热堆积以及附带的降频问题。
  • 4,提醒:设备过热、系统内存不足等,会出现App终止运行的情况。这就需要,在设备过热时降低复杂的渲染和计算。

对此,苹果还提供了Metrickit和Xcode Organizer等性能分析工具,进一步帮助开发者优化自己的应用。

参考:Apple

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/639203.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Javaweb学习路线(3)——SpringBoot入门、HTTP协议与Tomcat服务器

一、SpringBoot入门 &#xff08;一&#xff09;第一个Springboot案例 1、创建Springboot工程&#xff0c;添加依赖。 2、定义类&#xff0c;添加方法并添加注释 3、运行测试。 pom.xml&#xff08;框架自动生成&#xff09; <?xml version"1.0" encoding&quo…

linux上安装es、Kibana、ik分词

基本概念 ES是什么&#xff1f;我们可以把ES比作一个Mysql数据库&#xff0c;同样用来存储数据&#xff0c;不过比Mysql提供了更多的搜索功能,例如分词搜索&#xff0c;关联度搜索等&#xff0c;而且搜索速度也不是同一级别的&#xff0c; ES能够实现百万数据/秒的查询速度。接…

【Java|golang】1171. 从链表中删去总和值为零的连续节点

给你一个链表的头节点 head&#xff0c;请你编写代码&#xff0c;反复删去链表中由 总和 值为 0 的连续节点组成的序列&#xff0c;直到不存在这样的序列为止。 删除完毕后&#xff0c;请你返回最终结果链表的头节点。 你可以返回任何满足题目要求的答案。 &#xff08;注意…

Linux内核中内存管理相关配置项的详细解析9

接前一篇文章&#xff1a;Linux内核中内存管理相关配置项的详细解析8 十三、Enable recovery from hardware memory errors 对应配置变量为&#xff1a;CONFIG_MEMORY_FAILURE。 此项只有选中和不选中两种状态&#xff0c;默认为选中。 内核源码详细解释为&#xff1a; Enab…

HTML5 input元素新的特性

在HTML5中&#xff0c;<input>元素增加了许多新的属性、方法及控件。本文章分别对这三方面进行介绍。 目录 1. 属性 2. 方法 3. 新控件 1. 属性 <input>元素在HTML5中新增加的属性有&#xff1a;autocomplete 、autofocus、form、formaction、formenctype、f…

人工智能网站KameAI

人工智能网站KameAI 前言 人工智能的崛起与发展随着科技的飞速发展&#xff0c;人工智能(AI)已经逐渐成为我们生活中不可或缺的一部分。它的出现不仅改变了我们与世界的互动方式&#xff0c;还为各行各业带来巨大的便利。今天&#xff0c;我们就来聊一聊一个人工智能网站—Ka…

合并两个排序的链表

题目&#xff1a; 输入两个递增排序的链表&#xff0c;合并着两个链表并使新链表中的结点仍然是按照递增顺序的。例如输入的链表1和链表2如下&#xff0c;合并后的为链表3。链表的结点定义如下&#xff1a; struct ListNode {int value;ListNode *next; }; 复制 解题思路&…

APP性能测试,你需要关注哪些指标?

一、Android客户端性能测试常见指标 1、内存 2、CPU 3、流量 4、电量 5、启动速度 6、滑动速度、界面切换速度 7、与服务器交互的网络速度 二、预期标准指定原则 1、分析竞争对手的产品&#xff0c;所有指标要强于竞品 2、产品经理给出的预期性能指标数据 3、符合业…

Unity3D:Scene 视图导航

推荐&#xff1a;将 NSDT场景编辑器 加入你的3D工具链 3D工具集&#xff1a; NSDT简石数字孪生 Scene 视图导航 场景视图具有一组导航控件&#xff0c;可帮助您高效地四处移动&#xff1a; 场景视图辅助图标移动、旋转和缩放工具居中工具 场景视图辅助图标 场景辅助图标将显…

MySQL性能优化:索引优化

一、索引基础知识 &#xff08;一&#xff09;辅助索引/二级索引 叶子节点除了包含键值以外&#xff0c;每个叶子节点中的索引行中还包含了一个书签( bookmark) &#xff08;每个索引一颗B树&#xff0c;不包含行记录的全部数据&#xff09; &#xff08;二&#xff09; 回表…

docker-harbor私有仓库部署

什么是Harbor Harbor 是 VMware 公司开源的企业级 Docker Registry 项目&#xff0c;其目标是帮助用户迅速搭建一个企业级的 Docker Registry 服务。 Harbor以 Docker 公司开源的 Registry 为基础&#xff0c;提供了图形管理 UI 、基于角色的访问控制(Role Based AccessContr…

HTML5 语义元素(一)页面结构

本篇主要介绍HTML5增加的语义元素中关于页面结构方面的&#xff0c;包含&#xff1a; <article>、<aside>、<figure>、<figcaption>、<footer>、<header>、<main>、<nav>、<section>等元素。 目录 1. 语义元素介绍 1.…

01-SPA单页面的理解,它的优缺点分别是什么?如何实现SPA应用(了解))

文章目录 什么是SPA二、SPA和MPA的区别实现一个SPA1.引入库2.读入数据 总结 什么是SPA (single-page application),是一种网络应用程序或网站的模型&#xff0c;它通过动态重写当前页面来与用户交互&#xff0c;这种方法避免了页面之间切换打断用户体验,在单页应用中&#xff…

文心一言 VS 讯飞星火 VS chatgpt (39)-- 算法导论5.4 3题

三、在生日悖论的分析中&#xff0c;要求各人生日彼此独立是否很重要?或者&#xff0c;是否只要两两成对独立就足够了?证明你的答案。 文心一言&#xff1a; 在生日悖论的分析中&#xff0c;要求各人生日彼此独立是非常重要的。这是因为&#xff0c;如果各人生日不是独立的…

名号响亮的BBA,为什么在电车市场上“消失匿迹”了?

6月初&#xff0c;各大新能源车企公布了5月份的新车交付情况。整体来看&#xff0c;原本就“打得火热”的车市持续升温&#xff0c;多家车企月度销量环比涨幅超过10%&#xff0c;其中比亚迪更是拿出了超24万辆的“惊人表现”领跑市场。作为新势力的理想汽车&#xff0c;也打破单…

AntDB 企业增强特性介绍——同步异步自适应流复制

AntDB 提供了 hot-standby 的能力&#xff0c;功能与 Oracle 11g 的active standby 类似。并且通过流复制的方式&#xff0c;大大地缩短了备份库与主库的事务间隔。 传统流复制分为同步和异步两种模式。同步复制&#xff0c;即主机的事务要等到备机提交成功后才会提交并结束事…

2023-6-12-第三式单例模式

&#x1f37f;*★,*:.☆(&#xffe3;▽&#xffe3;)/$:*.★* &#x1f37f; &#x1f4a5;&#x1f4a5;&#x1f4a5;欢迎来到&#x1f91e;汤姆&#x1f91e;的csdn博文&#x1f4a5;&#x1f4a5;&#x1f4a5; &#x1f49f;&#x1f49f;喜欢的朋友可以关注一下&#xf…

前端vue可以左右滚动的切换的tabs tabs选项卡 滑动动画效果 自动宽度

前端vue可以左右滚动的切换的tabs tabs选项卡 滑动动画效果 自动宽度, 下载完整代码请访问https://ext.dcloud.net.cn/plugin?id13003 效果图如下: #### 使用方法 使用方法 swiperTabList: ["2023-06-10","2023-06-11","2023-06-12","2…

ICASSP 2023丨基于 CTC 的模型改进,实现更强的模型结构

分享一篇网易智企易盾 AI Lab 团队在ICASSP 2023被收录的语音识别方向的论文《Improving CTC-based ASR Models with Gated Interplayer Collaboration&#xff08;基于 CTC 的模型改进&#xff0c;实现更强的模型结构&#xff09;》 论文地址&#xff1a;https://arxiv.org/ab…