你不了解的Hyper Boost: 优化每个微秒都至关重要

王云辉 2018年10月20日 21:12

文/ 王胖子

10月11日,OPPO在上海首次宣布了旗下的一项全场景、全面加速的系统级资源调度优化方案--OPPO Hyper Boost 加速引擎。

这个听上去让人"不明觉厉"的"加速引擎",到底是怎样的一个黑科技?

而它的发布,又将为整个手机产业的未来趋势带来哪些影响?

【1】

简单来说,Hyper Boost是一个通过系统底层资源调配优化,针对用户实际使用场景和行为,进而提升手机性能,降低手机功耗,从而改善手机使用体验的解决方案。

其技术原理并不难理解,但对于厂商来说要真正做好,却极为困难。

智能手机是我们日常生活中,设计最为精密复杂的科技造物。每一部智能手机都是成百上千个元器件的组合,每一个元器件又代表着人类在集成电路、通信、传感器、显示、材料工艺等各个领域的技术进程--比如,仅仅是一块手指甲盖大小的骁龙845芯片,上面就容纳了55亿个晶体管,接近地球现有的人类数量总和。

但与硬件相比,手机的软件系统更加复杂。

今天,我们的手机已经可以实现每秒钟数千亿次的运算。这个庞大的计算能力,要在操作系统的统一调度下,分配给声音播放、视频显示、通话、连接网络、触摸控制、感知环境,乃至运行各种各样的应用程序,最终满足用户的使用需求。

但在整个过程中,根据用户需求进行高效、稳定的软硬件协同,并在不同进程之间,甚至是子系统之间做好资源调配,是一件极为艰巨复杂的工程。在很多情况下,极端敏感的手机操作系统,可能还会出现性能和功耗的严重冲突。

这也是为什么,在那个苹果光芒闪耀世界的年代,无论什么品牌或配置,都没有任何一款产品能够在用户体验上,与同时期的iPhone正面抗衡的原因。

iPhone是苹果自己生产的,iOS是一个封闭的系统,App Store也在自家掌控之内,苹果可以集中所有力量,对用户体验进行最极致的优化。

而安卓平台虽然更加开放包容,但各家厂商的硬件配置却千变万化,各家厂商很难从系统底层做好统一的资源调配和性能优化。而各家厂商彼时也还没能深入到系统层面,来补上这个关键的缺环。

而今年,可能会成为改变安卓由来已久弊端的元年。

手机厂商也已经从"不服跑个分"的堆砌配置指标,全面转向真正的用户体验比拼。

除了OPPO Hyper Boost,此前华为的加速方案也异曲同工,通过对软硬件协同的主动干预,来提升图形处理效率,降低功耗,改善用户体验。

而Hyper Boost更是一个具有标志意义的分水岭。它指明了在提升用户体验的系统优化中,一个手机终端厂商所应具有的领导者作用:

真正打通产业链的各个环节,击破技术孤岛,主导手机体验的全面提升。

这个趋势其实早有迹象,类似的概念也无数次被人提出。比如Hyper Boost的雏形,一套针对用户核心使用场景及使用行为进行优化,为解决安卓系统资源调配机制问题的解决方案,OPPO也早在 2015年就着手相关设计。

但直到现在,Hyper Boost这个集大成者真正出现,我们才终于确定,"全面加速"的时代正全面到来。

【2】

为什么我要给Hyper Boost这么高的评价?

其原因在于,它已经不是局囿于单一的技术或是合作方案,不再是垂直于应用层或是硬件层的,或是垂直在部分环节的"孤岛式策略",而是兼容不同软硬件底层,汇集产业链合力,真正成为了一个系统级的、全场景的、生态化的完整体系。

这对于安卓行业来说,是一个最关键的改变。

下面,我们具体来看看,为何Hyper Boost的改变如此重要,又蕴含了怎样巨大的能量。

Hyper Boost的核心工作原理:让应用程序与系统资源建立起实时的"双向对话":

与传统的安卓系统的资源调用方式不同(需要往返至系统底层耗时颇多),双向对话机制可以实现应用在任何"即时"——微秒级的--高资源需求情况下,它都可以随时发起对于资源的请求,手机系统侧都会快速做出反应。

而这种更针对性、更全方位的系统资源调配优化,能又让硬件资源能被更好地利用,让应用和游戏程序响应更加迅速、整体系统运行更加流畅。

最后,形成一个完整的正循环。

看上去,似乎很简单,谁都可以做到,是吗?

其实,很难。

因为有大量的前置工作需要完成。只有每一个环节都打通,才能让过河的大桥完成合龙。

首先,硬件底层的调度,远不止是CPU或GPU这样的通用模块,还包括内部总线、RAM、ROM、Modem、射频、显示器、传感器等更多硬件,它们的性能和资源都会根据实际需要,由Hyper Boost重新调度。

其次,更重要的是,第三方应用过去都像是"黑盒子",手机厂家不知道盒子里面是什么,自然也做不到对"黑盒子"的内部提供针对性优化。而现在,Hyper Boost通过打通产业方,让黑匣子不再神秘,在关键动作上与系统高效互动。

因此,Hyper Boost不会简单地以极限方式调动资源,变成"优化过度",而是会根据这些实时的动态,判断哪些是前台应用,哪些是后台应用,整体需要哪些资源,并如何进行分配……以此决定开启多少核、运行在什么频率,从CPU缓存到存储器之间的系统总线连接速度是多少,对外的物理总线接口速度是多少……并随时保持动态的功耗监测,决定什么时间开始做温控,如何做温控,是降频还是停核,停几个核,停大核还是停小核……

最终,实现功耗和性能的最佳平衡,让用户获得的体验。

而在系统侧,Hyper Boost也修改了Linux的内核任务调度规则,并对Android系统进行了很多有效的代码补充和裁减,在其基础上开发出一套完整的自有操作系统OPPO ColorOS,确保了Hyper Boost最稳定有效的加载和运行。

一个例子是,常规情况下,安卓对底层硬件内核进行动态调频的时间单位是20毫秒,而 Hyper Boost则将这一时间压缩到了0.2毫秒,从而实现了对应用程序更细微的感知,以及对底层硬件更精准的调度。

Hyper Boost甚至会学习用户习惯,根据常用的使用场景和使用行为进行综合判断,从而提供与之对应的动态优化方案,甚至提前做好资源调度的决策和准备。

【3】

具体来说,Hyper Boost目前主要包括三个部分,分别从系统、游戏和应用三个层面进行加速:

目前,System Boost(系统引擎)主要针对 20 多个软件场景、20 多种软件行为,提供 50 多个优化方案,有针对性地进行底层硬件资源调度。

正常情况下,这"20+20+50"已基本涵盖我们使用智能手机的绝大部分需求。

值得注意的是,得益于"双向对话",Hyper Boost的系统引擎的优化场景,不仅仅包括了系统和OPPO手机自带的原生手机应用,还包括了所有的第三方应用,是真正"全场景"的用户使用体验提升。

而在 OPPO 的内部测试中,在用户最为常用的 100 个应用的启动速度测试中,Hyper Boost 系统引擎的提升效果,最高达到了 31.91%。

在此基础上,Game Boost(游戏引擎)和App Boost(应用引擎)更针对用户最主要的需求,与应用厂商展开合作,共同实现了进一步的深度优化。

其中,Game Boost(游戏引擎)则与腾讯、网易两大游戏公司,Unreal 虚幻、Unity、Cocos三大游戏引擎都进行深度合作,并已针对 11 款市面上最受欢迎的手机游戏提供专项优化。

对游戏引擎来说,最简单的理解就是它能让手机游戏的帧数更高,更稳定,更省电,网络也更稳定。

如果按照安卓系统自身的通信机制,从最上层到最底层的资源调度,通常需要几十个毫秒,但在实际的游戏过程中,如果要实现每秒60帧的刷新率,就一定要在16.7毫秒之内解决。

为此,Hyper Boost都提供了解决方案,比如"多态网络加速技术",智能分配数据网络与Wi-Fi网络通道的流量数据,改善整体网络延迟状况,让用户在不稳定的Wi-Fi网络环境下,也能获得稳定的游戏体验。

而进行了针对性优化的头部游戏,网络稳定性和游戏帧数都有了更加显著的提高。

比如王者荣耀和刺激战场:

据OPPO透露,目前OPPO已针对Top100 手机游戏进行底层优化。

再看一下App Boost(应用引擎)。

它也是通过与应用厂商团队的共同合作,针对微信、淘宝、QQ等用户最常使用的平台级超级应用,进行了系统级的专项优化。

比如微信,针对11个用户场景进行了优化;

手机淘宝,针对19个用户场景进行了优化;

手机 QQ,针对13个用户场景进行优化。

【4】

OPPO特别说明的一个问题是,Hyper Boost对系统资源的监测和调度,并不会触碰或侵犯用户的任何隐私。

与很多搜集用户信息的"大数据模式"不同,Hyper Boost是一个完全的离线版本,它不存在任何数据上传,也不会主动抓取任何用户日志。

比如,当用户点触屏幕时,Hyper Boost会知道用户进行了点触,打开了哪个程序,需要调用哪些资源,并实时响应进行资源调度。但它并不会了解用户点触的坐标是多少,更不会记录和保存。

从本质上说,它就像是一个自动识别、判断和处理的接口程序,一边对接着系统资源,一边对接着应用程序。

也正是因为这一原因,它所使用的"双向对话"通信机制,是完全的一套代码实现的,这极大地保证了它的通用性。

就像谷歌的安卓系统定义了一套完整意义的API标准一样,Hyper Boost最终的发展方向,同样也是定义一套得到更多厂商接受的API标准。

据OPPO透露,目前它已经在与谷歌进行非常深入的技术讨论,希望未来能够共同展开底层接口优化,推动海外游戏与APP应用的优化与体验升级,让所有的第三方应用都通过这样的标准接口来接入智能手机系统,并获得更好的优化。

除了与谷歌的合作以外,OPPO也正在不断推进Hyper Boost的通用化。据透露,从文件方式访问到管道方式访问,从硬件技术到软件通道,Hyper Boost已经实现对安卓系统中,所有Linux通用接口的兼容支持。

这是Hyper Boost未来的野心。

当然,就目前而言,它的当务之急,还是尽快在OPPO自身的生态系统内完成铺开。按照OPPO的计划,ColorOS即将实现对17款机型的覆盖,令更多用户体验到全面加速的技术。

而在未来的升级中,Hyper Boost还将继续演进,不断提升能力,在提供关键性功能更新的同时,插入更多的子项更新,从而加速优化迭代,给用户带来更好的优化体验。

比如,通过学习分析与自动适配,让优化过程更智能;比如通过与更多厂商合作,拓展Hyper Boost深度优化的覆盖范围;比如充分利用5G网络超高速、低延时的技术特性,让用户在5G时代体验更好。

"总之,我们重视用户在各个应用中细节的使用场景,会把这些场景下的每一步体验,都做到深入细致。"OPPO研究院软件研究中心负责人陈岩说


推荐文章