OPPO无需AI的新技术,却能拯救安卓的流畅度

在中端的硬件配置上实现旗舰级的流畅度,在不改变硬件的基础上让游戏帧率更高还更省电,通过系统更新让两三代以前的老手机焕发“第二春”……

以上这些场景,放到去年,可能都还是无法想象的。但智能手机行业的发展就是这么日新月异——特别是得益于AI、机器学习技术的助力,如今已经有越来越多的厂商号称自己通过AI技术、实现了系统底层调度的自动优化,可以让用户体验更佳……

可是,“AI优化”效果就一定好么?过去笔者也以为是的,直到昨天,OPPO以一场小规模的技术沟通会,颠覆了我们之前的认知。

  • 全场景优化引擎,诞生

“Hyper Boost”——这就是全新的OPPO全场景系统优化方案的名字。它能做到怎样的效果?简单来说,“Hyper Boost”包含三个维度,分别是“系统引擎”、“游戏引擎”和“应用引擎”,它们涵盖了智能手机在各种不同使用场景下的典型使用情况,有针对性地进行“提速”、“降耗”、“平衡发热”等种种优化。

比如说,当你正在刷着朋友圈,突然想要美美的自拍一张时,典型的操作顺序是“退出微信-回到桌面-滑动应用程序列表找到相机-打开相机-预览并选择滤镜-自拍”。而对于OPPO Hyper Boost系统引擎而言,这每一步操作其实都对应着不同的优化逻辑:比如退出微信回到桌面时,首先会触发系统引擎的“动画加速”,让微信的退出动画更流畅;滑动程序列表寻找相机时,系统引擎会主动优化屏幕触控和显示延迟,达成“滑动加速”效果;打开相机的一瞬间,系统引擎首先会触发“相机启动加速”,让相机软硬件模块在更短时间里做好准备,接着会自动优化功耗,让相机预览界面的耗电不要那么“感人”;最后,用户按下快门键,OPPO 系统引擎此时将会全力会调动CPU、GPU、内存和磁盘资源,在更短时间里完成拍照、编码、后处理和存储的全过程……

而在游戏场景下,Hyper Boost游戏引擎的加速也不同于传统手机“游戏模式”只是简单提升硬件频率,用发热换性能的做法。取而代之的是,Hyper Boost游戏引擎能与游戏进行主动的“沟通”——在《王者荣耀》进入团战之前、在《刺激战场》中跳伞、开镜时,得益于软件厂商和OPPO的特殊合作优化,Hyper Boost游戏引擎能够准确地提前预知高负载峰值的到来,提前解放硬件性能,并且不会过多增加耗电。

根据相关测试数据显示,有了Hyper Boost游戏引擎的加成,《王者荣耀》的平均帧率可以稳定在60.04帧,而在团战爆发更为密集、游戏中特效更为复杂的深渊大乱斗模式中,平均帧率依然可以保持在60.01帧。

最后,就是本次最特别的“应用引擎”了——到目前为止,它主要涵盖了微信、QQ、支付宝三大最常用的应用软件。和系统引擎中的常规优化相比,“应用引擎”涉及的优化场景项目更细,优化也更为深入。诸如大家都知道的,经常容易卡顿的微信和手机淘宝,OPPO Hyper Boost系统引擎就分别进行了多达19项和11项的细分功能场景优化。优化之后,手机微信进出会话页面流畅度提升29.8%,朋友圈滑动流畅度提升19.9%,进入未读聊天群流畅度提升23.5%,而手机淘宝的性能提升幅度则更为惊人:其中购物车页面进入速度提升48.21%,店铺页面进入速度提升30.78%,搜索页面进入速度提升26.2%——要知道,手机淘宝之前可以说是知名的“卡顿狂魔”,如此巨幅的优化效果几乎可以称之为神奇。

  • 揭秘HyperBoost:无需AI的新办法

不难看出,OPPO Hyper Boost的体验提升的确很巨大、也很神奇,但它究竟是如何实现的呢?针对这个问题,我们三易生活专门找到OPPO方面的相关人员进行了了解,对于“Hyper Boost”的底层原理有了更为详尽的了解。

首先,在沟通会上OPPO曾提出,Hyper Boost的核心工作原理是让应用程序和系统资源进行“双向对话”——究竟什么叫做“双向对话”呢?

OPPO方面相关人士告诉我们,在传统安卓手机中,硬件调度器只能根据当前软件耗了多少电、用了多少内存来被动地适应、调度,至于这些性能、内存到底被用来做了什么,系统完全是不知道的。比如打开《王者荣耀》,系统只能识别到这个程序耗电很大、而且调用了很多GPU的资源,因此就会在一开始就自动提升CPU、GPU的频率到最高——但此时,性能其实很可能是过剩的。而且随着游戏时间的增长,主控持续被动满频率运行的结果就是过热、降频、掉帧卡顿的“死亡三连”。

而OPPO Hyper Boost高明的地方,就在于它其实是软件/游戏厂商和OPPO手机工程师合作,进行的一次“透明度”突破——软件和游戏在开发的时候,针对各种不同的场景,按照OPPO提出的新标准进行了不同场景的标定,比如《王者荣耀》从此之后在进入团战之前,就会告诉系统“我要开团战了”——而Hyper Boost调度底层接到这个场景反馈之后,就能根据此前事先测定的流畅度数据,知道CPU需要提示到多高频率、GPU需要多少资源,就能精确地保证团战的稳定,同时还不会有“过剩”的性能。当然,不同的手机硬件配置是不同的,因此手机也会向游戏发送资源信息,告诉游戏“我有多少处理能力剩余,你该调整到xx级别的画质来保证帧率”——这,就是“双向对话”的本质。

众所周知,目前也有不少智能手机品牌采用AI机器学习的办法试图“摸清”应用程序运行中的功耗规律,进而实现自动优化。但是,看似先进的AI数据,在面对千变万化的应用更新迭代时,其实并不见得那么精准有效。而OPPO选择直接和软件厂商“开诚布公”,双方用“更为实用的办法”测定软件不同场景下的功耗、直接人工在代码里加上标签,虽然看似不“高大上”,但最终实现的效果却比AI摸索的模拟数据要好得多、精确得多。

  • 不只是更流畅,OPPO的“野心”看得更远

“实诚人”OPPO通过直接找软件厂商、双方合作,人工对程序行为进行标定、测量的方式,实现了比过往手机厂商拿AI“闭门造车”所能达到的更好的性能与功耗实时优化效果。但你以为,OPPO只是为了证明老老实实的合作比AI更靠得住么?否!其实,OPPO正在下的,是一盘很大的“棋”。

首先,这种应用向手机主动报告当前功能状态和所需硬件性能,手机向应用反馈可用资源的机制,是本次基于OPPO完全独立研发的一套底层指令集。而根据这套颠覆性新标准,合作伙伴们在新版程序中加入的“运行场景标定数据”,也并非是所谓的“OPPO专版”,而是会长期地存在于未来的《王者荣耀》、《刺激战场》、手机淘宝、微信、QQ、乃至更多更多的公开版程序文件中的。

这样一来,如果王者荣耀推出了一种全新的玩法,如果刺激战场更换了画质引擎,“传统”的AI优化数据就可能全部失效,但OPPO Hyper Boost的应用状态标定数据却不会——因为腾讯的程序员们,会照例在新版本中加入新的场景标定数据,而OPPO 手机只需要感测到这些数据,就知道自己什么时候,该给程序多大的计算资源。换句话说,Hyper Boost优化,并不害怕对象程序的更新。

除此之外,由于不依赖AI加速能力,OPPO Hyper Boost可以轻松地部署到更多的老型号手机上——根据OPPO官方的说法,Hyper Boost甚至能让2016年的OPPO老手机“焕发新生”。这是那些所谓的AI加速可望而不可即的优势。

当然,最关键的地方在于——OPPO Hyper Boost采用的这套“软件厂商编写软件时直接写入场景性能需求,手机读取之后直接给予优化”的方案,颠覆了此前安卓所有的任务调度机制,完全是OPPO自主创造了一套新的APP与手机的交互思路。而这套全新的指令集、全新的技术方案,OPPO并不准备独占,而是正在和谷歌沟通,准备将它集成到未来的安卓版本中去。

这意味着什么呢?一方面而言,OPPO昨天提出的Hyper Boost,将来可能会成为新的安卓全球技术标准,造福全球的安卓开发者和使用者。但另一方面而言,相同的技术思路,其实也完全可以用在未来(可能)的自研系统、自主生态体系中去——毕竟,Hyper Boost既独立于现有的安卓底层调度器之外,也不依赖于第三方硬件供应商的驱动或者调度算法,它完完全全是OPPO在移动操作系统底层技术上的一次重大突破。

【本文图片来自网络】

推荐阅读:

3.5mm音频接口:现在是时候说再见了

可能真的要与老迈的3.5mm接口说再见了。

感谢谷歌,APP未来终于不能瞎要权限了

谷歌的这一动作,未来或将让安卓系统更为省心。

(0)

相关推荐