英伟达 CUDA Tile IR 宣布开源:基于 MLIR 框架释放编程模型潜力,可惠及 AMD、Intel 等异构生态
IT之家12月26日消息,英伟达12月4日发布了全新的CUDA13.1并引入了一种名为CUDA Tile的全新GPU编程方式,这是自2006年CUDA平台问世以来规模最大、内容最全的一次功能扩展更新。
现在,英伟达取消其CUDA Tile IR(Intermediate Representation)的专有许可,并宣布将其正式开源。该举措被视为NVIDIA近年来在CUDA生态中一次重要的开放动作。
IT之家注意到,其相关代码已采用Apache2.0许可证发布在GitHub上,这意味着开发者和研究人员可以在较为宽松的许可条件下使用、修改和分发相关代码。
从技术架构来看,CUDA Tile IR基于LLVM项目中的MLIR(Multi-Level Intermediate Representation,多层次中间表示)构建。这一点具有重要意义。
MLIR已被多家厂商和项目用于AI与高性能计算领域:AMD已在其计算与AI软件栈中使用MLIR,谷歌IREE项目同样依赖MLIR支持多种硬件平台,英特尔也为自家硬件开发了MLIR“方言”XeVM。此外,ONNX-MLIR、Torch-MLIR、MLIRE-AIE等多种IR框架同样建立在MLIR体系之上。
由于CUDA Tile IR采用MLIR作为基础,其理论上具备“降级”或转换到其他后端的可能性,从而为未来在非NVIDIA GPU或加速器环境中支持相关计算模型提供技术基础。至少在短期内,CUDA Tile IR的开源将有助于包括ZLUDA在内的相关兼容或移植项目的推进。
根据英伟达说明,此次开源的CUDA Tile项目包含多个组成部分,包括Tile MLIR“方言”、本地Python API绑定、字节码表示形式以及一致性测试套件。
英伟达官方对CUDA Tile IR的描述是:“CUDA Tile IR是一种基于MLIR的中间表示和编译器基础设施,用于CUDA内核优化,,重点支持基于tile的计算模式,并针对NVIDIA Tensor Core单元进行优化。该项目为表达和优化面向NVIDIA GPU的分块计算提供了一个完整的生态系统,通过为常见分块模式、内存层次管理和GPU特定优化提供抽象,旨在简化高性能CUDA内核的开发过程。”
0人