NVIDIA CUDA-Oxide 0.2.0

Konu yayınlandı. CUDA-Oksit 0.2.0 — NVIDIA Labs tarafından geliştirilen ve CUDA çekirdekleri için kod yazmanıza olanak sağlayan deneysel bir derleyici. saf Pas ve bunları doğrudan derleyin PTXProje, rustc için kendi arka ucunu kullanıyor ve modeli destekliyor. SIMT ve `cargo oxide` komutu kullanılarak oluşturulmuştur; ana bilgisayar ve aygıt kodu aynı kaynak ağacında yer alabilir. Sürüm yayınlandı. Haziran 5 2026 yıl ve ilk "topluluk sürümü" olarak adlandırıldı: 0.1.0 dalının açılmasının ardından proje, 23 katılımcıdan 37 çekme isteği kabul etti.

CUDA-Oxide 0.2.0'daki en önemli değişiklik, kendi kendine yeten bir yürütülebilir dosyaya geçiştir. Oluşturulan GPU yapıtları (PTX, NVVM-IR, LTOIR ve cubin), yeni oxide-artifacts formatı aracılığıyla artık doğrudan ana bilgisayar ikili dosyasına gömülebilir. Bu, CUDA çekirdeklerine sahip bir Rust programının artık ayrı .ptx dosyaları taşımasına gerek kalmadığı ve çekirdeklerin doğrudan çalışan yürütülebilir dosyadan yüklendiği anlamına gelir.

Ana değişiklikler:

  • GPU çekirdeklerinin ana ikili dosyaya yerleştirilmesi. Yeni #[cuda_module] mekanizması, türlendirilmiş bir çekirdek başlatma arayüzü oluşturur ve düşük seviyeli modül yüklemesini gizler. Geliştirici için bu, standart Rust API'sine daha yakın bir his verir: dilimler ve tamponlar CUDA tamponlarına eşlenir ve başlatma daha güçlü bir şekilde türlendirilmiştir.

  • CUDA kalıcı bellek desteği. #[sabit] ve Sabit eklendi. Ana bilgisayar ayarlayıcısı üretimiyle birlikte. PTX seviyesinde bu, .const ve adres alanı 4'e karşılık gelir. Bu, cihazda sabit değerler olarak çekirdeklere erişilebilir olması gereken veriler için önemlidir.

  • Daha fazla cihaz matematiği. libdevice aracılığıyla f32::max, f32::min'in yanı sıra f32 ve f64 için atan ve atan2 fonksiyonları eklendi. Bu, C++/CUDA'ya başvurmadan ifade edilebilen gerçek dünya hesaplama çekirdekleri kümesini genişletiyor.

  • Sessiz derleme hataları düzeltildi. Artık bazı sessiz derleme hataları, hatalı bir PTX dosyası oluşturmak yerine derleme sırasında bir hataya neden oluyor (eksik wgmma birikimi, hariç tutulan yıkıcılar, yutulan operatörler).

  • Sunucu çalışma zamanı iyileştirildi. Cihaza veri aktarımı için bir DeviceCopy güvenlik sözleşmesi eklendi; ayrıca akış sıralı aktarımlara sahip sabitlenmiş ana bilgisayar tamponları, eşzamansız hata iletme ve CUDA Sürücü API'si ile entegrasyon için ham CUmodule'e düşük seviyeli erişim sağlandı. Bir DeviceBuffer ayırıcı uyumsuzluğu da düzeltildi ve CUDA 12.8/13 ve aarch64 ile uyumluluk eklendi.

  • CUDA Tile ile entegrasyon. Bu sürüm, cuTile ↔ SIMT etkileşimine bir örnek ekliyor: bir CUDA-Oxide Tile çekirdeği ve SIMT PTX çekirdeği, paylaşılan aygıt tensörleriyle tek bir CUDA akışında çalışabilir. Bu, CUDA-Oxide'ın NVIDIA'nın daha geniş Rust/CUDA stratejisindeki yerini gösteriyor: proje Tile DSL'nin yerini almıyor, aksine Rust'ta açık SIMT programlaması için gereken boşluğu kapatıyor.

  • Yukarı akış Pliron/LLVM ile yakınsama. Dahili dialect-llvm, pliron-org topluluğundan gelen harici pliron-llvm ile değiştirildi ve yerel bileşen llvm-export olarak yeniden adlandırıldı. Bu, projenin altyapıdaki çatallanmasını azaltır ve onu yukarı akış geliştirmesiyle daha yakından uyumlu hale getirir.

  • Bir projenin montajını ve başlatılmasını kolaylaştırmak. Cargo Oxide artık RUSTFLAGS, CUDA_HOME ve nvcc ana derleyicisini dikkate alıyor, Rust araç zincirinden llc'yi bulabiliyor, hedef GPU'yu otomatik olarak algılıyor ve bir güncellemeden sonra eski arka uç önbelleğini sıfırlıyor. Yeniden üretilebilir bir geliştirme ortamı için devcontainer ve Nix flake eklendi.

CUDA-Oxide hâlâ erken bir alfa sürümünde: proje git üzerinden dağıtılıyor, crates.io'da henüz yayınlanmadı ve yalnızca belirli özellikleri destekliyor. LinuxREADME dosyasında ayrıca API'nin bozulabileceği ve hataların ve tamamlanmamış özelliklerin beklendiği açıkça belirtiliyor.

Lisanslama konusunda ince bir nüans var.Çalışma alanının ana kısmı şu şekilde dağıtılmıştır: Apache Lisansı 2.0ancak crate cuda-bindings şunu kullanıyor: NVIDIA Yazılım LisansıBu nedenle, CUDA-Oxide tamamen homojen bir Apache projesi olarak tanımlanamaz; düşük seviyeli CUDA bağlayıcıları için ayrı bir lisansa sahip, CUDA ekosistemi etrafında NVIDIA Labs tarafından geliştirilen açık kaynaklı bir projedir.

Kaynak: linux.org.ru

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster