Spectral Compute 发布 SCALE 编译器:让 CUDA 代码在 AMD GPU 上原生运行,性能超越官方工具

硬件4个月前发布 小马良
141 0

CUDA 是英伟达的护城河,还是高性能计算(HPC)的通用语言?

伦敦初创公司 Spectral Compute 给出了一个大胆的答案:CUDA 是标准,但不应被硬件绑定。

  • 官网:https://spectralcompute.com

他们推出了名为 SCALE 的编译器,旨在让现有的 CUDA 代码无需重写即可在其他硬件(如 AMD GPU)上高效运行。更令人惊讶的是,其基准测试显示,在 AMD 硬件上,SCALE 的性能显著优于 AMD 自家的 HIPIFY 转换工具,某些场景下甚至提升了近 6 倍。

Spectral Compute 发布 SCALE 编译器:让 CUDA 代码在 AMD GPU 上原生运行,性能超越官方工具

核心理念:像 CPU 一样对待 GPU

Spectral 的创始人团队拥有约 60 年的 HPC 优化经验。他们的挫折感源于现状:为了使用非英伟达硬件,开发者要么忍受糟糕的性能,要么耗费巨资重写代码。

SCALE 的设计哲学回归了 CPU 编译器的经典模式:

  • 源码级重编译:不同于 ZLuda 的二进制翻译或 HIPIFY 的代码转换,SCALE 直接将 CUDA 源代码编译为目标硬件的原生指令。
  • LLVM/Clang 底层支持:利用成熟的 LLVM 基础设施,确保代码在不同架构上的正确性与优化潜力。
  • 硬件决定性能:正如 C++ 代码在 Intel 和 ARM CPU 上的差异主要源于硬件本身,Spectral 认为 GPU 代码也应如此,编译器不应成为性能瓶颈。

为何优于现有方案?

目前市场上的 CUDA 移植工具各有局限:

工具方法局限性
AMD HIPIFY代码转换 (CUDA -> HIP/C++)未充分利用 PTX 等低级特性,性能损耗大,需手动调整。
Intel SYCLomatic代码迁移 (CUDA -> SYCL)仅自动迁移约 90% 代码,剩余 10% 需人工清理,工作量大。
ZLUDA二进制翻译在运行时转换,开销大,性能受损严重。
Spectral SCALE源码重编译直接生成原生代码,保留低级优化,性能接近甚至超越原生。

Spectral 声称,通过直接从源代码编译并对照 NVCC 输出进行验证,SCALE 能在保持准确性的同时,挖掘出目标硬件的全部潜力。

生态挑战与中立立场

尽管技术路径清晰,但 CUDA 生态的复杂性不容忽视:

  • 库依赖:数百个专用库(如 cuBLAS, cuDNN)是应用的核心。Spectral 正努力扩展对这些库的支持,并计划推出 PyTorch 兼容性,以融入主流 AI 工作流。
  • 硬件支持:目前主要聚焦 AMD,未来将支持其他 AI 加速器(未公开)。同时,SCALE 也支持英伟达 GPU,旨在通过更好的编译优化进一步提升其性能。

Spectral 强调其中立立场:“我们站在英伟达友好的一面,也站在 AMD 友好的一面。”公司已加入英伟达 Inception 计划,并与橡树岭国家实验室的 Frontier 超级计算机等大型系统合作测试。

商业模型与受众

  • 目标用户:科研机构、高校及需要跨平台部署的企业。研究人员缺乏时间重写代码,SCALE 提供了“重新编译即可运行”的捷径。
  • 授权模式:向商业用户出售许可证,对学术和非营利组织免费。
  • 团队规模:约 30 名员工,正在扩张中。
© 版权声明

相关文章