microsoft/antares

Antares: an automatic engine for multi-platform kernel generation and optimization. Supporting CPU, CUDA, ROCm, DirectX12, GraphCore, SYCL for CPU/GPU, OpenCL for AMD/NVIDIA, Android CPU/GPU backends.

解决的问题

AutoRT 是一个编译器解决方案,旨在帮助运行时用户使用他们自己的硬件加速器来为 PyTorch 创建、基准测试和优化算子。它简化了为 CUDA 和 ROCm 等不同后端编写自定义内核的过程。

工作原理

AutoRT 作为一个编译器运行,允许用户定义硬件加速器的函数和绑定。用户可以使用 CUDA/HIP C++ 17 标准编写内核主体,并遵循定义输入和输出的特定语法(例如 @DEF_FUNC 和 @DEF_BIND)。

适用人群

需要优化 PyTorch 算子并针对特定硬件加速器的开发人员和运行时用户。

亮点

  • 多后端支持: 支持 CUDA 和 ROCm 环境。
  • C++ 17 标准: 内核主体遵循 CUDA/HIP C++ 17 标准。
  • C++ 17 标准: 内核主体内核可以通过 autort 命令进行定义和 CLI 驱动。
  • 代理工作流: 包含一份教程,建议采用代理方法来学习和实现内核。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目