NVIDIA CUDA Rust'ı Duyurdu: GPU Çekirdekleri Artık Native Rust'ta Yazılabiliyor
NVIDIA'nın CUDA Rust'ı, GPU kernellerini native Rust'ta yazmak için iki yol sunuyor: SIMT tabanlı cuda-oxide ve Tile tabanlı cutile-rs.
NVIDIA, GPU kernellerinin CUDA C++ veya Python sarmalayıcıları yerine doğrudan Rust'ta yazılabilmesini sağlayan CUDA Rust'ı duyurdu. Bu adım, Nova Linux sürücüsünden Dynamo servis çekirdeğine kadar NVIDIA'nın yapay zeka altyapısında giderek yaygınlaşan Rust kullanımının doğal bir uzantısı ve kernel kodunu da kapsayarak son büyük boşluğu kapatıyor.
İki farklı proje, CUDA'nın iki programlama modelini destekliyor. cuda-oxide, klasik SIMT modelini hedefliyor; bir thread'in ne yapacağını yazıp binlerce kopyasını başlatıyorsunuz. Bu proje, #[kernel] fonksiyonlarını Rust MIR, Pliron IR ve LLVM IR üzerinden PTX'e kadar taşıyan özel bir rustc codegen backend'i olarak çalışıyor ve nightly toolchain ile compute capability 8.0+ bir GPU gerektiriyor. cutile-rs ise daha yeni Tile modelini hedefliyor; burada bir veri tile'ının ne yapacağını tanımlıyorsunuz ve derleyici bunu thread'lere nasıl eşleyeceğine kendisi karar veriyor. cutile-rs sıradan bir crate olarak dağıtılıyor, yalnızca stabil Rust ve CUDA 13.3 gerektiriyor ve kernelleri ilk çağrıldığında CUDA Tile IR üzerinden JIT olarak derliyor.
Mühendisler için pratik sonuç şu: GPU kernelleri artık host koduyla aynı crate'te, aynı güvenlik garantileriyle ve aynı build hattında yaşayabiliyor; ayrı CUDA C++ dosyalarına veya FFI sarmalayıcı katmanına gerek kalmıyor. NVIDIA, mimariler arası taşınabilirlik için önce Tile modelini denemeyi, bellek ve thread yönetimi üzerinde manuel kontrol gerektiğinde ise SIMT'e geçmeyi öneriyor. Her iki proje de henüz erken aşamada ama çalışır durumda; iki yol arasında ve CUDA ekosisteminin geri kalanıyla interop desteği planlanıyor.
Bu sentez, kaynağından yapay zeka tarafından üretildi; insan editör ya da elle onay adımı yoktur. Nasıl çalışıyoruz