文章插图
十年前,PC处理器进入了双核时代 。到目前为止,桌面上的主流仍然是四核 。六核和八核不多 。在无限军备竞赛的刺激下,手机处理器在短短几年内迎来了十核(联发科MT6797)!
与此同时,争论也不断:Android系统真的能充分利用这么多核心吗?
AndroidAuthority最近进行了详细的测试 。原理很简单,Android系统中的/proc/stat文件中记录了CPU的每个核心使用情况,可以通过编写一个简单的小工具来提取 。为了减少监控对性能的影响,在测试过程中只提取数据,然后进行分析 。
四核骁龙801测试处理器、骁龙615,八核 。
chrome上网期间(不断加载网页),骁龙801的四个核心大部分时间都得到了充分利用,很多时候都有2-3个核心活动 。
每个核心的利用率都很高,大部分时间是40-70%它甚至可以突破90% 。注:这是一个平均图表,因为原始数据跳跃太大,事实上,根据原始数据,多次接近100%的 。
骁龙615的八个核心也很活跃,四个以下很少 。
虽然每个核心的利用率不同,2-3个明显偏高,但都不闲着 。请注意,骁龙615是基于big的.LITLE架构,这里的许多核心操作不是为了提高性能,而是为了能效 。
Chrome进行了良好的多线程优化,将有效地将工作负载分配给多个核心 。其他应用程序是什么?让我们一个接一个地看看 。
作为参考,这是八核待机时(屏幕打开但无任何操作)的状态 。CPU不闲着,最多可以打开6个 。
YouTube跑四核:只用了两个核心,平均利用率低于50% 。
YouTube跑八核:主要用4个,偶尔6个,偶尔3个,平均利用率30% 。有趣的是,big核心被广泛使用,但LITLE核心却很少 。
《神庙逃亡2》跑四核:两个平均分配工作,另外两个没用 。
《神庙逃亡2》跑八核:大部分时间4-5次,少数时候7次,但几乎只有一次在做所有的工作 。
《神庙逃亡2》跑联发科四核:共享工作4个 。
Gmail跑四核:2-4个分工合作,但是遇到你的顾虑从来没有超过50% 。
Gmail跑八核:4-8,但利用率不到35% 。
《激流快艇2》跑四核:基本用两个,另外两个很闲 。
《激流快艇2》跑八核:一直用6-7个,但大部分工作都是其中3个完成的 。
接下来是一个非常有趣的测试程序:安兔兔 。
请注意,在最后阶段,所有八个核心都在全速运行,这在普通应用中是绝对看不到的 。
你可能会问,Gmail这样的轻量级应用怎么会用到八个核心?其实这些都是big.LITLE混合结构的结果 。当工作负荷增加时,big核心将被调用,LITLE核心将逐渐休息 。相反,中间有一些交叉时刻 。
当然,切换速度很快,每秒几千次 。
再以《EpicCiadel》为例看看:
起初,big核心很忙,Little核心几乎休眠,然后大约12秒,big核心放松,Little核心开始活跃,20秒左右再次切换,然后30秒、45秒、52秒重复切换 。
在此期间,核心使用量不断变化,比如前10秒只有3-4个(big核心),12秒前后最多6个,然后降到4个 。
这个测试的目的很简单,就是看CPU有多少核心可以在不同的场合发挥 。虽然测试不是很深入全面,比如缺乏A57/A53、A72/A53等组合,如监控数据间隔较长(330m秒),但仍能在很大程度上解释一个问题:
如今,手机上的多核心并不是完全无用的浪费,尤其是big.在LITLE混合架构下,异构多处理技术(HMP)已经相当熟练了,可以根据负载情况有效调动不同的核心工作,不仅仅是大型游戏,谷歌自己的chrome和Gmail也做得很好 。
当然,在大多数情况下,四核处理器就足够了 。八核多出的四核主要作用是节能、节能、交替使用节能核心和性能核心 。big.LITLE架构并不完美,但我们很高兴看到Android应用程序开发迅速跟上了多核心的步伐 。简单地说,“多核无用”是错误的,但夸大多核心的作用和只有核心数量理论是错误的 。
推荐阅读
- 工业园区唯亭街道第四针新冠疫苗预约指南
- 四川2023贺岁金银纪念币多少钱一个 四川2023贺岁金银纪念币多少钱
- 【紫牛头条】对话带厌学儿骑行9000公里的父亲:我没唬住他,反把自己累够呛
- 扬州N95口罩什么时候开始投放
- 扬州N95口罩投放店名单
- 杨幂现在用的什么手机2020
- 济南第三针加强针什么时候可以打 济南第二针加强针开打了吗?
- 麦穗摆放家里好吗 麦穗放家里什么位置好招财旺风水
- 儿童疝气手术有危险吗