Press "Enter" to skip to content

微软研究发布了人工智能编译器的“重金属四重奏”:Rammer(破碎器)、Roller(滚压器)、Welder(焊接器)和Grinder(磨床)

微软研究发布了人工智能编译器的“重金属四重奏”:Rammer(破碎器)、Roller(滚压器)、Welder(焊接器)和Grinder(磨床) 四海 第1张微软研究发布了人工智能编译器的“重金属四重奏”:Rammer(破碎器)、Roller(滚压器)、Welder(焊接器)和Grinder(磨床) 四海 第2张

人工智能(AI)模型和硬件加速器的发展给编译器带来了独特的挑战。这些挑战源于AI模型的不断演进的架构,例如从循环神经网络(RNN)和卷积神经网络(CNN)到最新的Transformer等模型的过渡,以及图形处理器(GPU)和神经处理器(NPU)等硬件加速器的快速进步。因此,高效的编译对于确保这些新的AI模型在现代硬件上能够有效运行变得至关重要。

传统的AI编译器在优化深度神经网络(DNN)的执行时通常面临一些限制。当前的编译器将DNN计算视为具有不透明库函数的数据流图,导致二级调度产生了显著的开销和未充分利用的硬件资源。此外,对AI模型进行数据划分和优化内存访问可能耗时较长。

最后,大多数AI编译器主要专注于优化数据流执行,往往忽视了AI模型内部的控制流代码的高效执行。这种限制影响了具有复杂控制逻辑的模型充分利用硬件加速的能力。

微软研究部门的一组研究人员引入了一套开创性的AI编译器集合,称为“重金属四重奏”。这个四重奏包括Rammer、Roller、Welder和Grinder,每个编译器都专门处理AI编译的特定方面。

  • Rammer:Rammer将AI编译的调度空间重新设想为一个二维平面,并优化了在大规模并行加速器单元上执行DNN工作负载的方式。Rammer通过将计算任务排列成“砖块”在这个平面上,最大限度地减少了运行时调度开销,显著提高了硬件利用率。
  • Roller:Roller通过有效地制定数据块划分策略来优化编译效率。它可以在几秒钟内生成高度优化的内核,与现有编译器相比,编译时间缩短了三个量级。
  • Welder:Welder从整体上优化DNN模型的内存访问效率,缩小了内存带宽和计算核心利用率之间的差距。它在各种DNN模型和编译器中实现了显着的性能提升。
  • Grinder:Grinder专注于优化AI模型内部的控制流执行,将控制流有效地整合到数据流中,以在硬件加速器上实现高效执行。它在控制流密集的DNN模型上实现了高达8.2倍的加速,使其成为控制流方面最快的DNN编译器。

四重奏的性能在多个设备和AI模型上进行了评估。Rammer在GPU上表现优于最先进的编译器,加速比最高可达20.1倍。Roller在保持竞争性能的同时,编译时间缩短了三个量级。Welder在硬件的更快计算核心中超过了现有框架和编译器,加速比高达21.4倍。Grinder在控制流密集的DNN模型上实现了高达8.2倍的加速,成为控制流方面最快的DNN编译器。

总之,随着AI模型和硬件的不断演进,编译器在确保高效执行方面的作用变得更加重要。四重奏在这方面的贡献为从图像识别到自然语言处理等各种应用领域的AI部署铺平了道路,最终推动了数字世界中AI技术的能力提升。

Leave a Reply

Your email address will not be published. Required fields are marked *