AMD英特尔(Intel)携手推进下一代x86架构的AI加速,最新发布的ACE规范正是这一合作的核心成果。ACE(AI Compute Extensions,AI计算扩展)是由AMD(AMD)英特尔共同定义的x86扩展集,其最新规范已发布,聚焦于AI加速。

Intel-AMD-x86-scaled.jpeg

去年,英特尔AMD通过“x86生态系统顾问小组”倡议,联手强化x86生态系统。该计划旨在提供一套跨架构的标准化功能,使其更易访问、可扩展并兼容未来需求。当时公布了四项关键功能:FREDAVX10ChkTagACE

如今,AMD英特尔发布了最新的AI计算扩展(ACE)规范,让我们得以一窥这项x86芯片新特性所能带来的改变。

AI计算扩展(ACE)旨在大幅提升矩阵乘法性能,同时兼顾可扩展性和能效。众所周知,矩阵乘法是AI工作负载中神经网络和大语言模型的核心模块。

当前的SIMD(单指令多数据)扩展(如AVX10)也能执行矩阵乘法,但其可扩展性和计算密度有限。可加速矩阵乘法之类的技术虽然能提升性能,但并非高效路径。x86生态系统顾问小组(EAG)希望通过ACE来解决这一问题,它在加速矩阵乘法的同时提供了更强的灵活性和可扩展性。

ACE扩展定义了矩阵乘法原语,为AVX和标量代码增添了新能力,具体包括:

  • ACE寄存器状态,包括磁贴和块缩放寄存器

  • 数据处理操作,可消耗AVX寄存器输入并在磁贴寄存器状态下运行

  • 数据移动操作,用于在ACE寄存器状态与AVX寄存器之间传输数据

  • 系统管理所需的状态和操作

ACE在AVX向量与ACE磁贴寄存器之间提供了紧密集成,将高计算密度的磁贴处理操作与AVX全面的数据处理特性结合在一起。

除了矩阵加速,AVX10框架下还提供了一系列专用的格式转换操作。

这些最新规范定义了用于加速计算任务的x86扩展,初始阶段侧重于矩阵乘法内核以及对机器学习工作负载至关重要的低精度数据格式。

本文描述的扩展支持多种数据格式。这可能包括矩阵乘法等操作的原生格式支持、OCP MX风格操作的缩放支持、累加格式,以及不同格式之间的格式转换支持。未来可能还会引入更多数据格式。

  • INT8:8位整数

  • INT32:32位整数

  • FP32:SE8M23(按IEEE-754定义)

  • BF16:SE8M7

  • FP16:SE5M10

  • E8M0:8位无符号指数(用于2的幂次块缩放格式)

  • FP8:8位浮点(按OCP 8位浮点规范(OFP8)定义,另见OCP微缩放格式(MX)规范)

  • MX FP8:8位浮点格式(SE5M2,SE4M3)

  • MX FP6:6位浮点格式(SE3M2,SE2M3)

  • MX FP4:4位浮点格式(SE2M1)

  • MX INT8:8位定点小数格式

ACE只是x86发展道路上的一个步骤。我们还讨论过APX(Advanced Performance Extensions,高级性能扩展),它将在下一代x86架构芯片的开发中发挥关键作用。这些进展预计将落地于未来的产品线中。


文章标签: #AI加速 #x架构 #矩阵乘法 #数据格式 #AMD

负责编辑

  菠萝老师先生 

  让你的每一个瞬间都充满意义地生活,因为在生命的尽头,衡量的不是你活了多少年,而是你如何度过这些年。