专访 OPPO 程杰:ColorOS 6 不仅有无边界的美,还有毫秒级的快
在过去的一年里,从多个维度来讲,我们都看到 OPPO 这家公司「变了」。
这种转型隐秘而张扬,又涉及形神表里,硬件软件。于是乎,爱范儿从众多的剖面选取最精妙的部分来进行记录:
形态超前的旗舰机 Find X 如何从设想到图纸,再进入工厂生产,最后到达消费者手中;
强调「后发优势」的 OPPO,为何在 5G、拍照等技术上积极投入?
拥有超 2.5 亿用户的 ColorOS 如何在设计上推陈出新,做出破格之变。
而在 OPPO 新产品系列 Reno 的新机正式发布之前,先一步亮相的则是 ColorOS 的全新版本,ColorOS 6 于 3 月 17 日正式见面,成为 OPPO 对外展现综合科技质感的又一种方式。
去年年底,爱范儿采访了 OPPO ColorOS 设计总监陈希,先人一步地看到了 ColorOS 6 在设计上做出的变革,以「无边界」为设计理念,重构了字体、排版、颜色、动画和交互。这是 OPPO 在全面屏成为主流,信息日渐冗余,用户对审美和细节更为挑剔的背景下给出的回应。
▲ 以宋代马远作品为创意的 ColoOS 6 见面会邀请函
对于「无边界」的解释,陈希告诉爱范儿,这如同中国传统艺术作品的布白手法,将空白作为构成的一部分布置在画面中,「例如南宋绘画大师马远的一些作品,即使以现代视角来看也很前卫,因为马远大量地运用了留白的构图。」
▲ 左为 ColorOS 5,右为 ColorOS 6
这是 ColorOS 6 的形和表,关乎乍见之欢;但神和里一样重要,关乎久处不厌。因而,在去年 ColorOS 五周年活动上剧透了 ColorOS 6 的样貌之后,这次的正式发布活动,则带来了人工智能助手 Breeno ,游戏引擎 GameBoost 2.0 更新。
根据 ColorOS 6 见面会的信息,Breeno 有别于普通的语音助手,以多模的交互方式,覆盖语音、识物、识屏、速览、空间、建议、驾驶 7 个模块。
这是 ColorOS 6 的 AI 思考。
而着眼于当下的话,游戏引擎 GameBoost 2.0 给 ColorOS 用户,尤其是手游玩家带来的体验提升则会更直接。为了探究 ColorOS 6 的这些内在改变,爱范儿专访了 OPPO 高级软件工程师程杰,聊了下看似成熟完备的手机系统,该如何进一步优化。
系统级的优化,往往是毫秒级的较真
除了工程师之外,程杰的身份还有很多。他喜爱硬件设备,同时还是游戏发烧友,从 PS1 一直玩到现在的 PS4,有着接近 20 年的游戏经验,3A 大作基本无一错过。这意味着,对于手机系统,尤其是游戏的体验,他也有着非常高的要求,程杰说:
对于游戏的整体的要求我个人是非常高的,比如玩王者荣耀如果不开高帧率我会觉得那个游戏就是完全是无法接受的。分辨率的选项上,1080P 的分辨率确实会比 720P 的效果更精细,更完美。所以我就会去追求给用户提供一个更好,无论是更高画质还是更高分辨率的一个游戏体验。
游戏体验涉及系统优化方方面面,性能支持和网络延迟是重要的基础部分,更好的体验则需要聚焦于更细的地方,于是就有了 ColorOS 6 新推出的 GameBoost 2.0,其中的核心改进在于 Touch Boost 和 Frame Boost 两个技术。
如果对比过 iPhone Xs 和 Android 中高端手机的《王者荣耀》体验就会发现,同样网络和画质下,新款 iPhone 确实会「跟手」那么一点点,即便差异很小,老玩家还是能够感受到其中的差异。作为工程师和游戏玩家,程杰也承认这一点:
客观上来说苹果处理器的性能确实是目前业内最好的,处理器的运算速度 Android 手机可能还是拼不过。另外苹果的触控元器件可能会更好一点。同时 Android 和 iOS 系统是两个完全不一样的处理逻辑。具体的我不太了解苹果是怎么去做的,但我们把 Android 从里到外看了个遍,它对于触摸响应的流程还是比较长的,也比较复杂,所以说有很多的优化空间。正因为有了这些优化空间我们可以提出更好的优化技术,来进行相应的改善。
在 Android 系统优化上,程杰要去抠每一个毫秒级的优化可能性;在处理器资源调度上,程杰也要在性能和功耗之间寻找微妙的平衡。这两者矛盾但又不得不统一,程杰给了一个精彩的比喻:现在给 Android 系统优化,就像给一间毛坯房进行精装修一样:
而且需要针对特定人群进行精装修,比如说有些是微信重度用户,有些是游戏玩家,这一些头部应用的表现可能都是不一样的。
一个非常细节但典型的例子是,在一些吃鸡游戏里面,玩家开镜瞄准的时候,常常会出现反应延迟和移动缓慢的情况,其中很大部分原因就是触控反馈没有做好。可以这么说,越是能体现游戏水平,精细操作的地方,往往越需要灵敏的手机触控体验,这层关系,既体现手游玩家的上限,也体现系统优化的上限,因此也就有了 Touch Boost 这个技术。
到了这个层面的系统优化,就是毫秒级的较真了。
想要缩短触控和反馈的时间,Touch Boost 技术需要从整个链路进行全盘考虑,包括触控驱动的优化,性能的优化和显示合成优化。
一些芯片厂商为了尽可能的省电,会采取很多复杂的 CPU 调度策略,当系统进入深度休眠时,触控的响应时间要长 6 倍以上。因而, Touch Boost 增加了触控驱动的优先级,CPU 一旦监测到触控动作,会立刻进入「打鸡血」模式,为后面的性能资源需求做准备,从用户触控后的第一帧画面开始,就能在 1 毫秒内做响应处理。
触控驱动优化能带来极速的响应,进一步的,用户打开「竞技模式」之后,系统一旦检测到触控操作,会调用处理器的大核心,对触控判断、画面合成等数据处理加速,内存和闪存也会加速,响应数据传输。
除了硬件上的响应,程杰和他的团队,还需要和 Android 系统本身的特性做斗争。在 Android 4.1 之前,Android 系统一直有一个名为 jank 的现象,即一个帧的画面在屏幕上连续出现 2 次。在 Android 4.1 著名的黄油计划里,加入了 VSYNC 信号同步来解决这个问题。其关键是,CPU/GPU 根据 VSYNC 信号(每 16 毫秒触发一次)同步处理数据,就能让 CPU/GPU 有完整的 16 毫秒时间来处理数据。
对于程杰而言,这 16 毫秒可能是世界上最漫长的时间,即便它一闪而过。Android 系统可以等这个 16 毫秒触发一次的信号,但是程杰不想等。程杰说:
我们看 Android 的一些底层的代码逻辑,通过优化的代码逻辑,每帧可以减少 3 到 5 毫秒响应时间,在很多逻辑上都是需要工程师去抠。另外我们也会去研究同步信号。比如说当我这个帧已经准备好了我已经可以丢到屏幕上了,但是我们还是需要和每 16 毫秒的那个同步信号做同步,要等到十六毫秒之后可能才能显示,所以在这块我们也做了相应的优化,让对应的触摸帧能够更快地显示在屏幕上。
具体来讲,Touch Boost 技术会在检测到触控之后,提前给系统一个信号,进行画面合成,缩短画面合成的周期。优化之后,平均可以节省半帧,也就是 8 毫秒的绘制时间。
可以这么看,Touch Boost 里面每一细项的优化,都不是立竿见影的改变,但是,每个细节,每一次几毫秒的优化,叠加起来,便是可以感知到的体验提升。
并且,程杰还表示,这项技术是对 Android 系统的优化,现阶段是用于游戏内,未来完全可以开放到手机的其他应用场景,整体提升手机的触控体验。
软件研发背后的硬实力较量
OPPO 的 GameBoost 加速引擎技术发布,到本次 ColorOS 6 上迭代为 2.0 版本,不过半年的时间,两次发布会的时间加起来也就半天。自 2015 年入职就专注在这里的程杰来说,外界看到的是半年的间隔而已,其实,他在 OPPO 的这四年,每个工作日都在专注于同一个目标:如何更有效地调度分配系统资源,提升性能,降低能耗。
程杰所在的水滴实验室属于 OPPO 研究院的软件研究中心,平时的工作就需要在手机的性能优化和功耗控制中博弈。
程杰介绍说,水滴实验室的名字来自《三体》,除了充满科幻色彩之外,水滴这个名字还有「水滴石穿」的意思,寓意这个实验室只有通过长期持续地积累,才能不断地在技术上进行突破。
这也是手机厂商不为人知但却必须持续付出的努力之一。很多人会认为,做 Android 手机,不就是从高通或者 MTK 那里拿芯片,再把屏幕闪存内存装一起,开源的 Android 系统换个主题,拼在一起就完事儿了。自去年以来,国内智能手机出货量越来越向头部的五家厂商集中,得第六名的意义都不大。这前五家厂商之间的竞争,也渗透到品牌和产品的各个方面。仅仅把产业链整合起来已经远远不足以应对市场竞争。
在宏大的市场变革背景下,程杰和水滴实验室需要兼顾的工作,就成为了终端厂商间拉开身段的硬实力。
除开厂商自身的研发硬实力,如何整合行业资源,进一步发掘手机硬件和系统的潜力也至关重要。
在 2017 年的时候,OPPO 就联合高通和腾讯《王者荣耀》开发方,在首发骁龙 660 处理器的 R11 手机上实现了多核多线程技术,将游戏帧率推到了极限。在此之前,《王者荣耀》的高帧率模式只有在搭载骁龙 8 系处理器的手机上体验最好,其他手机很难满帧率运行,也就是前文程杰说的,让他不够满意的游戏帧率。
也就是 2017 年,《王者荣耀》到达了热度的高峰期,那个时候,只要看到有人把手机横着握的,不出意外就是在玩这个游戏。
这其中关键,就是 HyperBoost 技术,也是程杰来到 OPPO 之初就在研发的技术。程杰介绍说:
从 2015 年我加入 OPPO 就开始在研发这个技术,直到 2016 年研发成功 HyperBoost 的雏形。在 2017 年和 2018 年,HyperBoost 技术已经深入到了我们多款手机的系统里。
可以这么说,系统优化的能力成为了一座桥梁,连接了 OPPO、高通和腾讯关于《王者荣耀》的优化,还有后续关于微信、淘宝等国民级应用的专项优化。
这其中的发展脉络绵延数年,HyperBoost 由 OPPO 内部的保密级项目,变成了对外展示软件能力的样板成果。虽然不断牵头做多方协同的工作异常繁琐,不过在 OPPO 和程杰看来,这些工作对用户的价值非常大,对行业的也有积极意义。
那么,为什么是 OPPO 这样的终端厂商承担起了建桥任务,来把芯片厂商和软件开发商纳入进来做优化工作呢?程杰这么解释:
终端公司更能做产品化的落地。
芯片公司给我们提出的很多技术,都还是工程师视角,离真正的落地还有一定的距离。像 OPPO 这种终端公司会去持续地去做用户的调研、访谈,去了解用户的痛点。
确实,相比于印象中寡言的工程师,程杰在我们聊的科技育领域非常健谈,他既需要直面用户,也同时面对软件硬件的产业链。但也因此,HyperBoost 的研发过程中,尤其是涉及行业上下游的游戏引擎(GameBoost)和应用引擎(AppBoost)中,基于正向的价值导向,行业伙伴也会积极响应 OPPO 的合作需求。
这也是被称作「大厂」的 OPPO 整合行业资源的优势,上亿量级的终端和用户让软件开发商更有动力去配合 OPPO 这样的终端厂商,做出针对性的优化。
在程杰的 To-Do List 上,还有数款 OPPO 即将发布的机型需要适配新技术,其中就有搭载骁龙 855 处理器和十倍混合变焦技术的 Reno 新系列机型。
软件系统对于厂商间应对未来的竞争变得越来越重要,自 2018 年开始,OPPO 开始毫不吝啬地对外分享自己的技术研发动态。与之前聚焦在硬件技术的展示不同,无论是单独给 ColorOS 6 开一次发布会,还是 GameBoost 两代技术以及程杰这样的工程师从幕后走向台前,讲述 ColorOS 背后的研发故事。
OPPO 自然明白,用户买这个品牌的手机,第一次可能是因为硬件外观,第二次继续选择这个品牌,那么软件系统的作用就更大了。