NVIDIA компаниясы Rust тилинде GPU ядролорун иштеп чыгуу үчүн CUDA Rust программасын чыгарды.

NVIDIA компаниясы CUDA Rust куралдар топтомун иштеп чыкканын жарыялады, ал Rust тилине GPUда иштеген ядролорду иштеп чыгууга мүмкүндүк берет. Куралдар топтому компиляция учурунда эс тутумдун коопсуздугун камсыздайт жана жарыш шарттарынын алдын алат. Кийинки жылы CUDA Rustту CUDA C++ жана CUDA Python куралдар топтомуна окшош өндүрүш долбоорлоруна ылайыктуу деңгээлге чейин иштеп чыгуу пландаштырылууда.

CUDA Rust куралдар тизмеги параллелдүү ядролорду иштеп чыгуу үчүн эки моделди колдойт: SIMT (Single Instruction, Multiple Threads) жана Tile. SIMT модели бир жиптин төмөнкү деңгээлдеги аныктамасына, миңдеген ушундай жиптерди ишке киргизүүгө жана башкарууга мүмкүндүк берет. Tile модели абстракциянын жогорку деңгээлин сунуштайт, мында жеке жиптерди ачык башкаруунун ордуна, маалымат блокторунда (плиткаларда) иштөө алгоритмдери аныкталат жана Tile IR компилятору бардык жиптерди манипуляциялоону, кирүүнү синхрондоштурууну, эс тутумду башкарууну жана тензордук ядролор боюнча маалыматтарды бөлүштүрүүнү иштетет.

SIMT моделин колдонуп, Rust тилинде иштеп чыгуу үчүн, cuda-oxide компилятору иштелип чыгууда, ал Rust тилинде кодду стандарттык тип системасын жана Rust ээлик моделин колдонуп, түздөн-түз аткаруу үчүн көрсөтмөлөргө компиляциялоого мүмкүндүк берет. виртуалдык машина CUDA PTX (Параллель жип аткаруу). GPU ядролору кадимки Rust тилинде жазылат, бирок no_std чөйрөсүндө иштейт жана стандарттуу Rust китепканасына (libstd) кирбестен, libcore китепканасынын жана адистештирилген Rust абстракцияларынын функцияларын гана колдоно алат.

Rust тилинде жазылган CUDA ядролору типти коргоону (коопсуз) колдонууга, кооптуу блокторду колдонууга жана төмөнкү деңгээлдеги жабдык көрсөтмөлөрүнө жетүүгө мүмкүндүк берет. Коопсуздукту камсыз кылуу үчүн, ар бир жиптин өзүнүн маалыматтарына гана эксклюзивдүү кирүү мүмкүнчүлүгүн камсыз кылган DisjointSlice түрү сунушталат. Cuda-oxide коду Apache 2.0 лицензиясынын алкагында лицензияланган.

Tail моделин ишке ашыруу үчүн cutile-rs китепканасы сунушталат. Ал CUDA ядролоруна түз компиляциялануучу кодду түзүү үчүн Rust идиоматикалык тилин колдонууга мүмкүндүк берет. Cutile-rs GPUда иштеп жаткан кодго Rustтун катуу ээлик кылуу жана карыз алуу эрежелерин колдонот. Ядро маалымат блогунда иштеген бир жиптүү программа катары ишке ашырылат жана компилятор эсептөөнү автоматтык түрдө жиптерге бөлөт жана алардын синхрондоштурулушун камсыз кылат. Жиптерге өзгөрүлбөс тензорлорго жалпы мүмкүнчүлүк берилет, ал эми өзгөрүлбөс тензорлор коопсуз кирүүнү камсыз кылуу үчүн бөлүнгөн блокторго бөлүнөт. Cutile-rs коду Apache 2.0 лицензиясы боюнча таратылат.

Source: opennet.ru

DDoS коргоосу, VPS VDS серверлери бар сайттар үчүн ишенимдүү хостинг сатып алыңыз 🔥 DDoS коргоосу, VPS VDS серверлери бар ишенимдүү веб-сайт хостингин сатып алыңыз | ProHoster