从14核CPU到AI游戏,浅析Arm新架构的更多细节
原标题:从14核CPU到AI游戏,浅析Arm新架构的更多细节
导读:
之家月日消息之家从火山引擎官方公众号获悉小米旗下人工智能小爱同学与火山引擎达成合作双方基于豆包大模型为用户带来更智能的交互体验据介绍小爱同学作为小米公司的智能已经成功融入手机智...
IT之家 6 月 13 日消息,IT之家从火山引擎正式公众号获悉,小米旗下人工智能“小爱同学”与火山引擎达成合作,双方基于豆包大模型为用户带来更智能的 AI 交互体验。据介绍,“小爱同学”作为小米公司的智能,已经成功融入手机、智能家居、智能穿戴设备以及小米 SU7 等众多小米产品中,提...
声明:本文来自于微信公众号“三易生活”(ID:IT-3eLife),作者:三易菌,授权 转载发布。
前段时间,我们三易生活已经给大家分析过最新一代的CPU和GPU架构设计,不过当时的资料主要还是来源于正式博客文章,以及面向大众公布的相关信息。
考虑到这些资料的宣传目的,它们通常并不会讲得特别详细,特别是在一些技术细节、研发背景等方面往往会比较为缺乏。这也就是为什么我们会在当时的内容中指出其中的一些性能对比的数据缺乏参数说明,甚至可能会影响到可信度的原因。
日前在参与了Arm方面召开的技术沟通活动,并与相关专家们近距离接触后,我们也终于得以为大家揭示更多关于Arm最新一代消费级计算终端平台的更多细节。
从X4到X925,命名规则大改背后的逻辑
这次首先要说的,就是Arm本世代产品线的命名改变。
过去Arm的“超大核”在命名上采用了很特别的单位数规则,即从Cortex-X1到X4。这些名称有两个好处,其一是它可以清晰地表明架构的代次,第二点就是这种单位数命名完全不同于大核(Cortex-A700系列)和小核(Cortex-A500系列)的形式,会让人“一眼就感受到”超大核的特殊地位。
但这种情况,在这一代上明显发生了改变。按照Arm方面最开始的说法,他们之所以要将新的超大核命名为Cortex-X925,主要是想要体现其(相对于以前的Cortex-X系列)取得了有史以来最大的代际性能进步。
有意思的是,当我们三易生活提出,新的命名反而可能会让这一代的“超大核”看起来显得不那么“特别”后,Arm方面显得相当惊讶,但他们也因此进行了一些很有价值的补充说明。
其一,是Cortex-X925这次虽然换用了与大核、小核相同“规则”的命名方式,但它的定位并没有降低,依然是旗舰专属。Arm方面的相关人士甚至还专门强调,Cortex-X925绝非过渡性的架构设计,而且绝不会被下放到非旗舰平台。
其次在Arm方面看来,Cortex-X925这个新的名称,也有为了显示其与新的Immortalis-G925旗舰GPU“相配”的意思。这多少也反映出如今Arm更愿意将他们CPU和GPU设计进行“打包销售”(即我们昨天讲到的Arm终端计算子系统)的意味。
智能手机何必只有8核,Arm已经铺平了道路
在提到如今智能手机SoC中CPU的核心布局时,许多朋友想必首先都会想到“8核CPU”这个概念。即便是在最近这两年,一些顶级旗舰SoC里的“大中小”CPU核心组合比例发生了各种各样的变化,但它们绝大多数还是维持在“总共8核”的水平上。
但是在Arm方面看来,如今这种对于“8核CPU”的坚持,其实未必是源自软件优化方面的需求,因为具体到应用上,实际上并没有几个软件真的能够“完全吃满”8个CPU线程。在实际使用中,反而更多的场景都是许多软件在“共享”CPU的资源,它们有的可能只能用到1颗核心、有的可以用到2核心,还有的可能可以同时使用4个核心,靠的都是手机自身在进行智能调度。
换句话说,实际上对于如今的智能手机超过8颗的CPU核心设计未必会有什么优化问题。正因如此,Arm实际上在最新一代的产品组合里,就提供了相当有“想象力”的CPU组合方案,比如它甚至可以支持12颗Cortex-X925搭配2颗Cortex-A725、从而组成惊人的14核CPU配置。
在此基础上,Arm方面更进一步指出,真正制约了如今智能手机SoC核心数量的因素,其实是芯片设计时的面积控制需求。举例最近几年手机SoC里的CPU部分所占用的面积几乎是“原地踏步”,为了给其他更“热门”的计算单元(比如ISP或NPU)腾出面积,或许才是导致芯片厂商大多不敢突破8核心CPU的原因所在。
但是针对这一点,Arm方面现在也做了一些工作,比如他们就设计了针对Cortex-A725架构的面积库方案。这种设计下的Cortex-A725虽然跑不到很高的频率,却可以显著缩小面积、同时保障IPC和能效不降低。说得更直白一点,这其实就是在鼓励有“追求”的SoC厂商可以“大核当小核用”,从而塞进更多的大核、甚至是超大核在他们的SoC里。
重视光栅性能提升,Arm新款GPU的方向对了
除了更大胆的CPU设计,Arm这一代的GPU方案也有一些潜在的亮点。
首先从基本的产品规划上来看,大家已经知道Arm这代的GPU包含三条产品线,即Immortalis-G925、Mali-G725和Mali-G625。
在此前的产品解析内容里我们三易生活已经提到,这一代的三款GPU本质上采用的都是相同架构,它们的区别主要体现在明显的核心数量差异,以及对光线追踪的支持与否上。
但实际上在我们这次与Arm方面的沟通中得知,这一代的Mali-G725GPU尽管在正式资料中并没有光追的相关标注,但实际上也可以被配置为支持光追。
看到这里,可能有些PC玩家会产生不好的联想。因为这是否意味着未来我们会看到一些“不够高端”的SoC,用着中端配置的Mali GPU,却公然宣传支持“旗舰级光追特性”呢?
虽然不能完全否定这种可能性,但值得关注的是,至少在这一代的GPU基础架构上,Arm的设计思路是极为“务实”的。比如Immortalis-G925现在支持更多的着色器数量,同时它的底层图块吞吐量和着色器作业分配的速度都得到了显著提升。
除此之外,通过与Epic Games以及Google和联发科的合作,Arm GPU现在可以支持桌面级的虚幻5渲染器、用于光线追踪的Lumen光照解决方案,以及安卓动态性能框架(Android Dynamic Performance Framework),从而实现更复杂的主机级游戏光线追踪品质,以及更高分辨率、更清晰的游戏视觉效果。
如果将这种做法与当前PC上的显卡功能方向去进行对比就会发现,事情变得有那么一点点讽刺了。因为PC上的GPU现在普遍在追求用AI去“缩放”游戏画面,这是因为它们本身的光栅性能进步幅度追不上显示器分辨率、刷新率的升级速度。
但是Arm则没有这样去“取巧”,虽然如今智能手机的游戏真实渲染分辨率也普遍低于屏幕的物理分辨率,可他们还是选择了实打实地强化GPU的硬件光栅能力。所以至少在解决问题的态度上,Arm这样的做法目前显然也更值得去点赞。
专注CPU AI加速,Arm的优化方案很务实
最后必须要提及Arm的Kleidi软件库,这是一种旨在提升Arm处理器AI性能的正式软件优化方案。但是与大家熟知的其他一些智能手机AI加速技术相比,它又有着一些格外的特别之处。
Kleidi专注于加速CPU上的AI性能,而并不依赖于GPU或NPU。这就会带来一些显著的好处,比如它完全可以在那些使用非Arm架构NPU、GPU的SoC上起作用,而且相比于架构五花八门的NPU和GPU,Arm的CPU在如今的移动平台(特别是智能手机)上显然要“普及”得多的。所以这就意味着Kleidi可以很容易地触及更多设备,而且适配、优化起来也更容易,成本更低。
虽然Kleidi是与Arm2024年的产品线同期发布,但这并不意味着它只能支持最新的Arm CPU。事实上,Arm方面在设计Kleidi时,就已经考虑到了对于老平台的兼容性,它甚至可以用在“古老”的Arm V8指令集CPU上,去使用NEON这样的老指令集去实现AI加速效果。
Arm方面通过实验证明,仅仅通过代码优化就可以让现有机型提升数十倍的AI生成速度
而且Kleidi也不需要开发者去学习某种全新的AI框架,Arm方面直接与MediaPipe、LLAMA.cpp、PyTorch和TensorFlow Lite进行了合作集成。开发者可以很容易地让主流AI功能在各种Arm设备,比如手机、Windows PC上“跑起来”,切实地加快相关应用和功能的落地速度。
Arm方面还正在与Unity合作开发端侧推理引擎Sentis。它可以在所有支持Unity游戏引擎的设备上实现体验,将游戏中的AI模型内存占用率降低72.5%,同时提升特定AI框架在游戏中的性能多达660%。看起来游戏行业已经在开始热议的“分布式文案和生成式对话”,说不定首先会在手游领域落地了。