Nvidia tau tso tawm CUDA-oxide, ib qho Rust-to-CUDA compiler.

Lub Tuam Txhab Nvidia luam tawm thawj zaug tso tawm ntawm cov cuab yeej siv CUDA-oxide, uas tso cai rau koj los tsim cov GPU kernels sib luag hauv hom lus Rust CUDA SIMT (Ib qho lus qhia, ntau txoj xov). Qhov project no tso cai rau koj los sau Rust code siv tus qauv hom system thiab tus qauv kev muaj tswv Xeb, ncaj qha rau hauv cov lus qhia rau kev ua tiav hauv CUDA virtual tshuab PTX (nvidia.com) (Kev Ua Haujlwm Sib Npaug) yam tsis siv cov lus tshwj xeeb hauv nruab nrab (DSLs) thiab kev khi.

Cov cuab yeej code yog sau ua Rust thiab faib los ntawm nyob rau hauv daim ntawv tso cai Apache 2.0. Qhov kev tso tawm thawj zaug tau muab tso rau hauv qhov pib alpha version.

Cov cuab yeej siv muaj xws li:

  • Ib qho backend tsim cov lej rau rustc compiler uas tso cai rau koj los sau cov haujlwm nrog "#[lub noob]" rau hauv cov kernels GPU sib luag hauv CUDA PTX sawv cev. Kev sib sau ua ke siv tus qauv rustc framework-based transformation saw. Pliron: Rust → MIR → Pliron IR → LLVM IR → PTX.
  • Ib lub kaw lus sib koom ua ke rau kev sib sau ua ke cov khoom uas khiav ntawm lub kaw lus tswj hwm thiab ntawm GPU, uas yog ua raws li cov lus txib "cargo oxide build" thiab "cargo oxide run".
  • Ib pawg ntawm Rust abstractions uas siv tau rau hauv GPU-side kernels. Piv txwv li, muaj cov haujlwm rau indexing, sib koom nco thiab kev siv barrier, atomic operations, thiab thread group synchronization. TMA (nvlabs.github.io) (Tensor Memory Accelerator). Nws muaj peev xwm hu rau kev khi rau cov lus qhia qis qis tshwj xeeb rau Blackwell architecture (piv txwv li, kev ua haujlwm matrix txuas ntxiv).
  • Cov pob khoom crate nrog cov khoom siv CUDA runtime uas ua rau kev tswj hwm lub cim xeeb, khiav cov kernels ntawm GPU, thiab cuam tshuam nrog GPU-based functions asynchronously.
  • Ib qho piv txwv ntawm cov kernel uas qhia txog cov yam ntxwv xws li vector manipulation, matrix multiplication (GEMM), atomic operations, asynchronous execution, thiab library integration. MathDx, siv cov generics thiab closures, cuam tshuam nrog CUDA cores hauv C ++ / CCCL.

GPU kernels yog tsim nyob rau hauv Rust ib txwm (tsis yog ib hom lus), tab sis raug ua tiav hauv ib puag ncig tsis muaj qhov tseeb thiab tsuas yog siv tau cov haujlwm los ntawm lub tsev qiv ntawv xwb libcore thiab cov kev tshwj xeeb Rust abstractions uas tau hais ua ntej lawm, tsis muaj kev nkag mus rau Rust tus qauv tsev qiv ntawv (libstd). Cov hom kev txhawb nqa suav nrog cov hom primitive (u8..u64, f32, f64, bool), cov qauv, enumerations, tuples, arrays ([T; N]) thiab slices (&[T]), match / if / if let operators, for thiab while loops, iterators (.iter(), .enumerate()), closures, thiab generics. Tsis txhawb nqa yog String, Vec, thiab Box hom, format!, panic!, thiab println! macros, Trait objects, thiab cov qauv tsev qiv ntawv ua haujlwm siv los ntawm kev hu xov tooj operating system (kev tuav cov ntaub ntawv, I/O, thiab kev ua haujlwm network).

Muaj Peb theem ntawm CUDA core kev nyab xeeb hauv Rust: hom system kev tiv thaiv (muaj kev nyab xeeb), kev siv cov blocks tsis muaj kev nyab xeeb, thiab kev nkag mus rau cov lus qhia kho vajtse qis. Kev ua tau zoo ntawm CUDA-oxide-based matrix multiplication implementation (GEMM SoL) ntawm B200 GPU ncav cuag 868 trillion operations ib ob, uas yog 58% ntawm kev ua tau zoo ntawm lub tsev qiv ntawv zoo tshaj plaws. cuBLAS.

Tau qhov twg los: linux.org.ru ua

Yuav txhim khu kev qha hosting rau cov chaw nrog DDoS tiv thaiv, VPS VDS servers 🔥 Yuav lub vev xaib hosting txhim khu kev qha nrog kev tiv thaiv DDoS, VPS VDS servers | ProHoster