8
为什么Android手机的核心比计算机多?
笔记本电脑通常最多具有四个核心,而双核心可能更常见。我最近已从四核切换到双核,并且可以确认,即使有CPU密集型任务,四核用例的数量也有限。 另一方面,在手机上,四核,六核和八进制似乎很常见。为什么?哪些任务可以利用它们? 我了解big.LITTLE可能是答案的一部分。也就是说,这么多内核的主要好处不是能够同时使用所有内核,而是使用功耗适合当前工作负载的内核。但是,例如,Snapdragon 625具有八个Cortex-A53内核,big.LITTLE似乎不是这种情况。 也许ARM架构的每瓦最佳性能较低。也就是说,将单核调整为每瓦最佳性能会导致ARM上的性能低于英特尔上的性能。因此,使用更多的内核来提供性能。这只是一个假设。 但是即使在这种情况下,我也看不到手机可以有效使用哪些工作负载,例如八个核心。在笔记本电脑上,我可以想象一些像项目的完整(非增量)编译。但是在手机上? 游戏可能会要求很高的性能,但是它们通常需要GPU的性能而不是CPU的性能,不是吗? 从理论上讲,在安装或升级时,多个内核可以加快Android Lollipop / Marshmallow AOT的编译速度(例如,“优化应用程序3/121”阶段)。但是,我不确定这是否可以利用多个内核。据我记得的代码,一次只编译一个应用程序,但是编译过程本身可能存在一些并行性。 此外,Android 7+可以在编译时利用多个内核。但是由于据报道它在空闲和充电时会编译,因此收益似乎很小。至少当一个人晚上给手机充电时,我真的不在乎这种情况下是花费30分钟还是两个小时。