

NVIDIA终于可以公开过去半年 潜心研发的重磅成果 —— 正式开源了cuda‑oxide。这是一款实验性定制 rustc 编译器后端,最大亮点是可以用纯 Rust 语言编写 CUDA 内核

先简单介绍下Rust 语言:Rust 是一门由 Mozilla 发起、如今在系统编程、高性能计算、云原生及 GPU 开发领域大火的静态强类型编译型语言。它主打内存安全、无数据竞争、零开销抽象、高性能,无需垃圾回收机制,既能拥有 C/C++ 级别的底层执行性能,又从语法和编译层面杜绝空指针、内存泄漏、野指针等常见底层 bug;同时支持泛型、闭包、结构体、枚举、异步编程等现代化编程特性,非常适合操作系统、编译器、驱动、高性能并行计算、GPU 内核这类对性能与稳定性要求极高的场景。
以往开发 CUDA 内核大多依赖 C/C++,语法繁琐、内存隐患多,而 cuda‑oxide 彻底打破了这一局限。它无需领域特定语言(DSL)、无需外部函数接口(FFI)绑定、没有源码到源码的转换步骤,采用单源码设计:宿主代码与#[kernel]设备代码可写在同一个.rs文件中,执行cargo oxide build即可同时生成宿主二进制文件与 PTX 代码。
如果你关注过 Rust 编译器相关技术分享,此前关于 MIR 中间表示、闭包结构体化、SPIR-V 底层原理的深度解析,其实都是在为 cuda‑oxide 这一项目做技术铺垫。
项目已内置46 个实战示例,覆盖异步 MLP 推理流水线、跨库内核调用、Rust 与 C++/CCCL 设备端 FFI 双向互操作等主流开发场景。
项目仓库:https://github.com/NVlabs/cuda-oxide
官方文档:https://nvlabs.github.io/cuda-oxide/
如果你深耕 Rust 开发、编译器底层、GPU 高性能计算领域,欢迎上手体验、参与项目共建,也期待大家给出宝贵反馈。