NVIDIA, GPU çekirdeklerini Rust ile yazmak için CUDA Rust'ı duyurdu
NVIDIA, cuda-oxide ve cutile-rs projeleriyle Rust'ı GPU çekirdeği yazımında birinci sınıf dil haline getirmeyi hedefliyor.
NVIDIA, Rust'ı GPU çekirdeği yazımında birinci sınıf dil yapmayı amaçlayan CUDA Rust girişimini duyurdu. Rust kodu daha önce de CUDA çekirdeklerini başlatabiliyordu, ancak çekirdeğin gövdesi genellikle başka bir dilde yazılmak zorundaydı. CUDA Rust bu boşluğu NVlabs çatısı altındaki iki açık kaynak projeyle kapatıyor: SIMT modeli için cuda-oxide, daha yeni Tile modeli için cutile-rs. İkisi de Rust çekirdeklerini doğrudan derliyor ve Rust'ın sahiplik kurallarını kullanarak aliasing hatalarını derleme zamanında reddediyor.
İki model, iki proje
SIMT, CUDA C++ ve numba-cuda'da kullanılan model: tek bir iş parçacığının ne yaptığını tarif edip binlercesini başlatıyorsunuz. Tile ise bir veri karosunun ne yaptığını tanımlıyor, iş parçacığı eşlemesini ve bellek yerleşimini Tile IR derleyicisi üstleniyor. NVIDIA önce Tile'ı, açık iş parçacığı ve bellek kontrolü gerektiğinde SIMT'i öneriyor. Planlanan diller arası birlikte çalışabilirlik sayesinde Rust'ı seçmek C++ veya Python'a kapıyı kapatmayacak.
cuda-oxide özel bir rustc kod üretim arka ucu. #[kernel] fonksiyonlarını Rust MIR, topluluk projesi Pliron IR ve LLVM IR üzerinden PTX'e taşıyor; gerisini standart arka uca bırakıyor. Gereksinimleri ağır: Linux, compute capability 8.0 ve üzeri GPU, CUDA 12.x, libclang'lı clang ve sabitlenmiş nightly-2026-04-03 zinciri.
cutile-rs daha üst seviyede çalışıyor. Her karo bloğu çekirdek gövdesini tek bir mantıksal iş parçacığı gibi çalıştırıyor, gerçek iş parçacığı sayısına derleyici karar veriyor. Gereksinimleri hafif: CUDA 13.3, kararlı Rust 1.89 veya üzeri, Linux; nightly veya özel LLVM gerekmiyor.
Güvenlik iddiası ve olgunluk
SIMT tarafında çıktı tamponu DisjointSlice<f32> tipiyle her iş parçacığına kendi elemanı üzerinde tekil erişim veriyor; sınır dışı erişim Option döndüğü için ele alınan bir dala dönüşüyor. Aynı tamponu girdi olarak geçirmek SIMT'te E0502, Tile tarafında E0382 hatasıyla reddediliyor. NVIDIA, tensörlerin sahipliğini başlatma sınırının ötesine taşıyan cutile-rs'yi daha güçlü garanti olarak niteliyor.
cutile-rs crates.io'da yayında ve Hugging Face'in Grout çıkarım motoru ile mistral.rs içinde kullanılıyor. cuda-oxide erken alfa aşamasında. NVIDIA her iki projenin de alfa olduğunu ve üretim için doğrulanmadığını belirtiyor. Teknik ayrıntılar MarkTechPost'un haberinde.