CHIP-SPV/chipStar

chipStar is a tool for compiling and running HIP/CUDA on SPIR-V via OpenCL or Level Zero APIs.

解决的问题

chipStar 允许开发者将为 NVIDIA CUDA 和 AMD HIP 编写的程序编译并运行在支持 SPIR-V 作为设备中间表示的硬件平台上(如 Intel、ARM、RISC-V GPU)。这消除了与 CUDA/HIP 相关的厂商锁定问题,使这些应用程序能够在更广泛的 GPU 上运行,包括 Intel、ARM Mali 和 RISC-V PowerVR。

工作原理

chipStar 作为一个翻译层,利用 Clang 和 LLVM 将 HIP 和 CUDA 代码编译为 SPIR-V。然后使用 OpenCL 或 Intel Level Zero 等低级运行时,作为原生 CUDA/HIP 运行时的替代方案,在目标设备上执行代码。

适用人群

专为需要将现有 CUDA/HIP 应用程序移植到非 NVIDIA/AMD 硬件的 HPC(高性能计算)开发者和研究人员设计,无需重写整个代码库即可完成迁移。

主要亮点

  • 广泛的硬件支持:支持 Intel GPU、ARM Mali G52 和 RISC-V PowerVR GPU。
  • 库生态系统:提供 rocPRIM、hipCUB、rocThrust 和 rocRAND 等关键 HIP/ROCm 库的移植版本。
  • Intel MKL 集成:包含 shim 层,使 hipBLAS、hipFFT 和 hipSOLVER 可通过 Intel oneAPI MKL 工作。
  • Cuda-to-SPIR-V 工具链:包含 spirv-extractor 用于验证二进制文件,以及 opencl-spirv-compiler 用于生成设备特定的二进制文件。

相关

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