L’ANALISI
CUDA Rust: come provare cuda-oxide e cutile-rs senza confondere prototipo e produzione
NVIDIA apre due percorsi nativi per scrivere kernel GPU in Rust: SIMT con cuda-oxide e programmazione a tile con cutile-rs.

In breve: cuda-oxide compila kernel Rust in PTX con un backend rustc dedicato; cutile-rs usa Rust stabile e CUDA Tile IR. Entrambi sono scaricabili, ma NVIDIA li dichiara ancora non pronti per la produzione.
Due percorsi, due livelli di controllo
cuda-oxide segue il modello SIMT e lascia al programmatore il controllo di thread e memoria. cutile-rs lavora su tile e delega al compilatore il mapping sull’hardware: è più astratto e riduce alcune classi di errore.
Requisiti reali per provarli
cuda-oxide richiede Linux, GPU con compute capability 8.0 o superiore, CUDA 12.x o successivo, clang e una toolchain nightly fissata. cutile-rs richiede Linux, la stessa soglia GPU, CUDA 13.3 e Rust stabile 1.89 o successivo.
Sicurezza della memoria e prestazioni
I tipi e i contratti di lancio cercano di intercettare aliasing e configurazioni errate in compilazione. Questo non prova automaticamente prestazioni migliori: kernel, compilatore, architettura GPU e workload vanno misurati separatamente.
Limiti da non saltare
cuda-oxide è in alpha iniziale; cutile-rs è più avanti ed è pubblicato su crates.io, ma copertura e API possono cambiare. La disponibilità open source non equivale a supporto enterprise o stabilità ABI.
Checklist pratica
- Verificare GPU, versione CUDA e toolchain richieste.
- Eseguire prima gli esempi vector-add ufficiali.
- Misurare compilazione iniziale, cache, correttezza e throughput.
- Confrontare lo stesso kernel con CUDA C++ o Python.
- Bloccare versioni e commit: le API sono ancora mobili.