Nvidia 发布 CUDA Rust,支持用 Rust 原生编写 GPU 内核
Nvidia 推出 CUDA Rust 项目,包含 cuda-oxide 和 cutile-rs 两条工具链,分别对应 SIMT 和 Tile 编程模型。cuda-oxide 通过自定义 rustc 后端将 Rust 内核编译到 PTX,cutile-rs 则在稳定版 Rust 上实现基于 Tile 的编程。两个项目都在编译期强制内存安全,Nvidia 计划支持与其他 CUDA 前端互操作。
Nvidia 于 2026 年 9 月发布 CUDA Rust,允许开发者直接用 Rust 编写 GPU 内核并编译到 PTX,无需绕道其他语言。此前 Rust 开发者虽然可以从宿主代码启动内核,但内核本身通常要用 CUDA C++ 或 Python 编写。
CUDA Rust 提供两条工具链。cuda-oxide 针对 SIMT 模型,通过自定义 rustc codegen 后端,将标记为 #[kernel] 的函数经 Rust MIR、Pliron IR 框架和 LLVM 编译到 PTX。它需要 Linux、计算能力 8.0 以上的 GPU、CUDA 工具包 12.x 或更新版本,以及固定的 nightly 工具链。cutile-rs 支持 Tile 编程模型,在稳定 Rust 1.89+ 上运行,需要 CUDA 13.3,无需自定义 LLVM。两者均在编译期强化内存安全:cuda-oxide 使用 DisjointSlice 和 launch contracts 防止别名,cutile-rs 通过张量分区和所有权保证独占访问。
cutile-rs 已发布到 crates.io,并被 HuggingFace 的 Grout 推理引擎和 mistral.rs 使用。cuda-oxide 仍处于早期 alpha 阶段。Nvidia 计划实现 CUDA Rust 与 CUDA C++、CUDA Python 的互操作,避免开发者被锁定在单一前端。官方建议新项目优先选择 Tile 模型,编译器自动管理线程到架构的映射,需要精细控制时可切换到 SIMT。
本文由程序自动抓取公开报道,经 AI 筛选与改写生成,未经人工逐条核实,事实以原文为准。