Navoakan'ny Nvidia ny CUDA-oxide, izay mpamorona Rust-to-CUDA.

Orinasa Nvidia namoaka famoahana voalohany ny fitaovana CUDA-oksida, izay ahafahanao mamorona kernel GPU mifanitsy amin'ny fiteny Rust CUDA SIMT (Toromarika tokana, Kofehy maromaro). Ity tetikasa ity dia ahafahanao manangona kaody Rust amin'ny fampiasana ny rafitra karazana mahazatra ary modely fananana Harafesina, mivantana ao amin'ny torolàlana ho an'ny fanatanterahana ao amin'ny milina virtoaly CUDA PTX (nvidia.com) (Parallel Thread Execution) tsy misy fampiasana fiteny manokana ho an'ny sehatra antonony (DSL) sy bindings.

Voasoratra ao amin'ny Rust ny kaody fitaovana ary nozarain'i eo ambanin'ny lisansa Apache 2.0. Ny famoahana voalohany dia napetraka ho dikan-teny alpha voalohany.

Ny fitaovana ilaina dia ahitana:

  • Backend famoronana kaody ho an'ny compiler rustc izay ahafahanao manangona asa miaraka amin'ny "#[kernel]" ho lasa kernel GPU mifanitsy ao amin'ny fanehoana CUDA PTX. Mampiasa ny rojo fanovana mifototra amin'ny framework rustc mahazatra ny Compilation. Pliron: Rust → MIR → Pliron IR → LLVM IR → PTX.
  • Rafitra mitambatra ho an'ny fanangonana singa miasa amin'ny rafitra mpampiantrano sy amin'ny GPU, izay mifarana amin'ny fanatanterahana ny baiko "cargo oxide build" sy "cargo oxide run".
  • Andian-dahatsoratra Rust abstractions izay azo ampiasaina amin'ny kernels GPU-side. Ohatra, misy asa azo ampiasaina amin'ny indexing, shared memory and barrier usage, atomic operations, ary thread group synchronization. TMA (nvlabs.github.io) (Tensor Memory Accelerator). Azo atao ny miantso bindings ho an'ny toromarika ambany lenta manokana ho an'ny maritrano Blackwell (ohatra, ny fandidiana matrix mivelatra).
  • Fonosana crate misy singa CUDA runtime mifototra amin'ny mpampiantrano izay ahafahana mitantana ny fahatsiarovana, mampandeha kernel amin'ny GPU, ary mifandray amin'ny asa mifototra amin'ny GPU tsy mifanaraka.
  • Fanangonana ohatra amin'ny kernel mampiseho endri-javatra toy ny fanodinkodinana vector, fampitomboana matrix (GEMM), fandidiana atomika, fanatanterahana asynchronous, ary fampidirana library. MathDx, mampiasa fomba mahazatra sy famaranana, mifandray amin'ny CUDA cores ao amin'ny C++/CCCL.

Ny kernel GPU dia noforonina tao amin'ny Rust mahazatra (tsy fiteny), fa tanterahina ao amin'ny tontolo iainana. tsy misy_std ary afaka mampiasa asa avy amin'ny tranomboky ihany libcore ary ireo abstractions Rust manokana voalaza teo aloha, tsy misy fidirana amin'ny tranomboky mahazatra Rust (libstd). Ireo karazana tohana dia ahitana karazana primitive (u8..u64, f32, f64, bool), structures, enumerations, tuples, arrays ([T; N]) ary slices (&[T]), match / if / if let operators, for sy while loops, iterators (.iter(), .enumerate()), closures, ary generics. Tsy tohana ireo karazana String, Vec, ary Box, format!, panic!, ary println! macros, Trait objects, ary ny fonction library mahazatra ampiharina amin'ny alàlan'ny antso an-tariby rafitra fiasana (fikirakirana rakitra, I/O, ary ny fiasan'ny tambajotra).

misy Ambaratonga telo amin'ny fiarovana ny fototry ny CUDA ao amin'ny Rust: fiarovana ny rafitra karazana (azo antoka), fampiasana sakana tsy azo antoka, ary fidirana amin'ny toromarika momba ny fitaovana ambany lenta. Ny fahombiazan'ny fampiharana fampitomboana matrisy mifototra amin'ny CUDA-oxide (GEMM SoL) amin'ny GPU B200 dia mahatratra 868 trillion isan-tsegondra, izay 58% amin'ny fahombiazan'ny tranomboky nohatsaraina. cuBLAS.

Source: linux.org.ru

Mividiana fampiantranoana azo antoka ho an'ny tranokala misy fiarovana DDoS, mpizara VPS VDS 🔥 Mividiana fampiantranoana tranonkala azo antoka miaraka amin'ny fiarovana DDoS, mpizara VPS VDS | ProHoster