Apple silicon基于ARM自研的A系列处理器已经有十多年了,但一直用于手机和平板这种追求能耗比的使用场景:也就是需要在性能和功耗(或者说续航时间)之间取得平衡。一直以来,CPU方面最高规格也就是A12X/A12Z的4+4,GPU则是A9X、A10X的12单元。这次基于A14衍生的M1,CPU规格是4+4,GPU规格是8单元,表现是非常惊艳了,但这个“惊艳”的对比对象是同为4核心规模,用于轻薄本的Intel低压CPU。而哪怕和同样用于轻薄本,但CPU规格高达8C16T的AMD低压CPU比,则是虽然单线程性能大幅胜出,但多线程性能大体上还是处于下风的。
因此,4+4规格的M1直接放到对功耗限制不那么高的MBP16上,和现在最高规格为8C16T的x86比,多线程性能整体上还是处于劣势。当然,这并不是太大问题,把CPU规格做到8+4就足以吊打所有核心数量不超过8核的x86 CPU——事实上,根据彭博的小道消息,Apple Silicon的目标是16+4,性能会比当前最强的x86主流桌面CPU 5950X更强。以M1的功耗表现,即便做到16+4,CPU满载并且维持3.2 GHz频率的功耗应该也不会超过100W,和8C16T的i9还是省电一点。
但CPU加核心,不是说直接把核心加进去就行的。尤其是超过4个核心后,就我所知起码要解决核心间互联、缓存一致性机制、内存带宽这几个方面的性能瓶颈。这些方面,有公开测试数据的CPU架构中,表现最好的是Intel用的是高带宽低延迟的Ringbus以及其升级版Mesh;AMD用的Infinite Fabric、以AWS Graviton2为代表的ARM N1所用的Mesh则是在不少应用场景中表现出性能瓶颈。这方面我不清楚Apple silicon会如何考虑,是直接采用N1公版的低效Mesh,还是几组核心簇沿用M1的Fabric总线,还是有更新的方案,但不管哪个方案,都需要更多的时间进行设计和测试。
GPU方面同理,要达到甚至超越MBP16最高的RX5600M Pro的性能,M1上的最高8单元规格还是不够的,不管是采用独立GPU芯片,还是在更大面积的SoC上集成更多单元,GPU的线程调度、分配模块都需要进行扩展甚至重新设计。
更高性能的GPU对显存带宽的渴求也需要设计新的内存/显存访问架构,至于是继续SoC和CPU核心的内存带宽一并考虑,还是独立芯片使用单独的显存芯片放弃SoC的整合优势,这个我个人很期待能看到Apple silicon能再拿出一个让业界惊艳的方案。
而软件生态方面的不成熟,对于MBP16面向的用户群体来说是一个更严重的问题。毕竟mac上游戏的缺失,需要放弃MBP13的便携性而选择更高性能的MBP16用户,大部分是更为专业的行业用户,需要处理更复杂精细的项目,生态不成熟,不管是bug带来的时间损失,还是兼容模式运行带来的性能损失,这个用户群体是更不愿接受的。在M1推出一个季度到半年时间,大部分软件都已经推出原生ARM版本并且已经收集到一批用户反馈后再推出ARM的MBP16,会是一个更稳妥的选择。
Anandtech测试了下M1,总体的CPU部分功耗在22-24W部分吧,GPU18W,最后的累计TDP还是28W 附近。
低功耗设计的问题就是低功耗表现好,但是功耗给高了性能也上不去,16的45W+还没有合适芯片,目前M1规格给电也不行。此外就是M1的外围太弱了。
但是我很好奇Apple对于16寸的芯片设计,以及iMac,iMac Pro来说,这些销量更低,芯片设计要求更高的产品,Apple如何去解决成本问题?目测使用独显(显著降低单位制造成本,显著降低CPU和GPU的不同需求下的芯片数量),以及学习AMD的胶水策略(最少的芯片设计覆盖绝大部分场景)都是很可能的。