近日,摩尔线程宣布开源高性能线性代数模板库MUTLASS,以便开发者能够更高效针对摩尔线程全功能GPU的MUSA Core及Tensor Core等单元进行编程,加速基于国产GPU的算子开发以及算法创新。
MUTLASS开源地址:
https://github.com/MooreThreads/mutlass
在数值计算和深度学习领域,矩阵乘法(GEMM)及其变种(如FlashAttention、Convolution)是构建复杂上层应用的基石。然而,为了追求更高的算子融合效率或者更创新的算法,开发者们往往需要超越标准化计算接口的限制,如标准BLAS接口以及芯片厂商的计算库接口,以实现高性能的定制化算子。
MUTLASS(MUSA Templates for Linear Algebra Subroutines)正是为满足这一需求而设计。作为摩尔线程专为MUSA架构优化的高性能计算库,MUTLASS是基于开源模板库CUTLASS进行的MUSA适配和定制化开发、优化,针对矩阵乘法及相关变种,MUTLASS提供了一系列高性能的C++模板组件,并采用了与muDNN库类似的分层分解及数据搬运策略,以确保性能的充分发挥。
在本次开源的版本中,摩尔线程适配了CuTe后端库,为其增加了第三代MUSA架构的MMA计算原语,支持TF32/FP16/BF16/INT8等多种数据精度,并以此为基础,初步实现了矩阵乘法、默认实例库、性能测试器及相关工具包的支持。
借助MUTLASS,开发者们既可以灵活复用不同层级的模板组件,也可以按需修改各种模板组件的实现细节,以较低的开发成本实现定制化的高性能算子,从而在摩尔线程全功能GPU上充分释放性能,并尝试更多的算法创新。
摩尔线程将持续优化MUTLASS的性能,并不断引入新的功能。我们诚邀广大开发者体验MUTLASS,并提供宝贵的反馈意见,共同促进MUTLASS在性能和功能上的持续完善,携手推动基于国产GPU的生态建设。