小米的miuiV9出了,值得升级么
   来源:漫游引力波     2020年11月07日 20:07

先说点有意思的,MIUI9发布会演示米6和竞品启动时间的对比,选择的竞品和米6性能都很接近。P10的960和835的大核频率基本完全一致,对于启动时间这种CPU sensitive的场景,是一个重要的决定性因素,而且同为八核,CPU角度的差异非常小,这样无论输赢才干干净净,明明白白。因为同样的原因,上一代四核820/821系列PK 950的启动速度是有点吃亏的,第三方应用启动时动辄几十个线程,核越多越好,然而人民群众喜(bu)闻(neng)乐(zi)见(ba)的王者荣耀因为Unity引擎的原因,近似等于一个单线程游戏,因此这时就看单核最高性能了。

既然硬件性能相近,那差异就在系统的优化上了。一开始还没优化的时候,米6启动速度和P10是差不多的, Top50应用优胜个数大概平分秋色,然而彼时微博和今日头条上充斥着荣耀9完爆米6的视频,米6得分基本是零蛋,这让大家都很困惑(蜜汁微笑)。

最后优化结束,我们赢了。在整个过程中,有一些有意思的结论:

1. 三星S8 8895版比835版更快,并不是835性能不如8895,而是S8 835版的CPU调度不知道出于什么考虑很保守,而8895版则正常发挥。最后8895版S8实际测试结果得分大概是国行S8的两倍,八分左右。 最后因为国内版和国际版的生态环境以及本地化功能的不同(比如S8国际版应该是没有自启动限制的),我们最终选择了S8国行来比较。

2.华为三兄弟(Mate9,P10,荣耀9)同为960,测试结果惊人地一致,几乎完全相同。这点华为做的确实不错,性能发挥很稳定。此外,华为似乎宣称EMUI 5.1相比EMUI 5.0更快,事实证明,仅从启动时间这点上看,EMUI 5.0的Mate9和剩下两款EMUI 5.1的设备几乎完全一样。

(可以预见大家会对视频中,S8的省电模式有疑问,我负责任地和大家讲,省电模式那一个镜头仅仅是为了演示什么叫卡顿,让大家有个直观映像,而最终结果公证的整个过程是完全没有任何问题的,如果是省电模式的话,S8的结果就远远要比公证结果差了)

回到MIUI9系统层面如何变得更快,当初的出发点主要是两方面:

1. 解决用户痛点,吐槽最多的性能问题

经典的二八原则,作为一个系统来说,一些看起来不痛不痒的遗留问题,会极大伤害用户的体验,会给系统带来负面的口碑。

举个很简单的例子,不少朋友包括同事和我吐槽过,感觉MIUI系统很臃肿,得出这个结论的原因却很简单,仅仅是因为桌面滑动感觉很不跟手,感觉“拽着图标走”(当然现在系统中还有少数剩余的会给大家带来这些感觉的问题,我们正在努力,相信大家很快就能看到)。桌面的同事和产品经理针对这个问题反复尝试,一遍又一遍地划桌面,只为了追求更好的效果,多的时候一天我们几个蹲在一起,划了整个三四个小时的桌面,最后大家纷纷表示已经划到不理智。大家可以仔细体会一下,MIUI9的桌面和MIUI8的效果的差异。

再其次,就是能够自动地在用户碰到因为后台异常导致一些严重卡顿的时候,能够快速恢复。Android的生态环境大家都知道,基本可以用群魔乱舞来形容。用户碰到的卡顿问题,即使是后台的第三方应用导致的,也会第一时间想到是不是系统出了问题(这就是IOS可以带来安全感的地方,大家出了问题第一时间想到可能是应用的问题)。我们曾经碰到过一些非常热门的应用(有多热门呢,几乎每一台手机都会安装它们)推了新版本后,后台死循环,因为用户经常用到它们,杀掉他们也起不到太大作用,杀掉了等它们下次再被用户启动,问题又出现了。

于是我们做了异常恢复机制,让这些应用即使真的出现了问题,在后台也不会引起灾难性的后果,让手机状态得以快速恢复。

我们总结了大概四十到五十个这样的关键卡顿场景,一个个去攻关,目前MIUI9内测版中已经有超过一半被解决了,剩下的很多是Android生态本身的特性导致,属于硬骨头,接下来我们会一个个去啃。

2. 无处不在的代码深层优化

代码中的性能优化,相比之下更难更琐碎。MIUI的所有团队,都在仔细梳理自己之前的代码和业务逻辑,一点点改进,几毫秒几毫秒地去抠,光看一个点你会觉得微不足道,优化和不优化几乎没有任何区别,但量变引起质变。系统层面的思路也是一样,无论是内存反碎片,还是sdcardfs文件系统,最终呈现出来MIUI9的“快”,就是这些小点的积累后的集中爆发。

大家现在看到的MIUI9,还在持续进化中,有些同学对精简功能的愿望,很快就会看到变化了

2017.7.28

先写这么多,慢慢补充,内测升级发布一天了,大家的反馈让我们深深地松了一口气 (为了让自己显得公正客观,我自己选择了没有变化的那一项)

第一时间 王者荣耀 性能