Nvidia has announced CUDA Rust, a new toolchain enabling developers to write native GPU kernels directly in Rust — a capability that did not previously exist. Until now, Rust could launch GPU kernels via existing CUDA bindings, but developers could not write the kernels themselves in Rust. CUDA Rust closes that gap.

The initiative encompasses two projects, each taking a different approach to Rust-native GPU programming. cuda-oxide, described as being in an early alpha stage, implements the familiar SIMT (Single Instruction, Multiple Thread) model used by CUDA C++ and numba-cuda. It is its own rustc codegen backend that translates GPU kernels natively to PTX.

cutile-rs (cuTile Rust) takes a higher-level approach, where developers describe operations on tiles rather than individual scalars, with the compiler deciding thread mapping and memory layout. Nvidia recommends cutile-rs as the preferred path for most developers, as it does not require architecture-specific decisions in source code.

Both projects enforce memory safety at compile time — a significant advantage over CUDA C++, where memory bugs can be difficult to detect and dangerous in GPU contexts. cuda-oxide prevents aliasing through DisjointSlice and Launch-Contracts, while cutile-rs uses tensor partitioning and ownership to guarantee exclusive write access per tile block.

cutile-rs is the more mature of the two projects. It is already published on crates.io and is in production use at two notable inference engines: Hugging Face's Grout and Mistral AI's mistral.rs. It runs on stable Rust from version 1.89 and requires CUDA 13.3 but no nightly toolchain or system LLVM.

cuda-oxide requires more toolchain infrastructure — CUDA 12.x, clang with libclang headers, and a specific nightly Rust toolchain — and is recommended mainly for developers who want explicit control over threads and memory.

Both projects require a GPU with Compute Capability 8.0 or higher and Linux.

The announcement is significant for the Rust ecosystem and the GPU computing community. Rust's memory safety guarantees are increasingly valued in systems programming, and extending them to GPU kernel development addresses one of the long-standing pain points of CUDA development: the ease with which memory bugs can corrupt data on massively parallel hardware.

The release also signals Nvidia's continued investment in broadening the CUDA developer ecosystem beyond C++ and Python. By enabling Rust-native kernel development, Nvidia opens the door to Rust's growing community of systems programmers, embedded developers, and safety-conscious engineers who have been waiting for a path to GPU programming that matches Rust's safety guarantees.