Megjelent a ZLUDA eszközkészlete, amely lehetővé teszi a CUDA-alkalmazások futtatását AMD GPU-n.

A ZLUDA projekt elkészítette az AMD GPU-kra optimalizált CUDA technológia nyílt megvalósítását, amely lehetővé teszi a módosítatlan CUDA-alkalmazások futtatását olyan teljesítménnyel, amely közel áll a réteg nélküli futtatások teljesítményéhez. A közzétett eszközkészlet biztosítja a bináris kompatibilitást a meglévő CUDA-alkalmazásokkal, amelyeket NVIDIA GPU-hoz készült CUDA fordítóval állítottak össze. A megvalósítás az AMD által fejlesztett ROCm stackre és a HIP (Heterogeneous-computing Interface for Portability) futtatókörnyezetre épül. A projekt kódja Rust nyelven íródott, és MIT valamint Apache 2.0 licenc alatt terjesztik. Támogatott a Linux és Windows működés.

A CUDA működésének megszervezése AMD GPU-s rendszereken az utolsó két évben fejlesztés alatt állt, de a projekt korábbi évtizedeinek története van, és eredetileg az Intel GPU-k számára lett kifejlesztve. A GPU-k támogatására vonatkozó politika változása azért történt, mert kezdetben a ZLUDA fejlesztője az Intel munkatársa volt, de 2021-ben a cég úgy döntött, hogy a CUDA-alkalmazások Intel GPU-n való futtatásának lehetősége nem jelent üzleti érdekeket, és nem sürgeti a kezdeményezés fejlesztését.

2022 elején a fejlesztő elhagyta az Intel-t, és szerződést kötött az AMD-vel a CUDA kompatibilitásért felelős réteg fejlesztésére. Az AMD arra kérte a fejlesztést, hogy ne hirdessék az AMD projekt iránti érdeklődését, és ne végezzenek közzétételt a ZLUDA nyilvános repójában. Két év elteltével az AMD úgy döntött, hogy a CUDA-alkalmazások AMD GPU-n való futtatása nem képvisel üzleti érdekeket, ami a szerződés feltételei alapján lehetővé tette a fejlesztő számára, hogy felfedje munkáját. Mivel a GPU gyártók leállították a projekt finanszírozását, a projektek jövője most a közösség érdeklődésétől és más cégektől érkező együttműködési ajánlatoktól függ. Külső támogatás nélkül a projekt csak olyan irányokban fejlődhet, amelyek egyedül a szerzőt érdeklik, mint például a DLSS (Deep Learning Super Sampling).

A jelenlegi formájában a megvalósítás minősége alfa-verzióként van értékelve. Eddig a ZLUDA már számos CUDA-alkalmazás futtatására használható, beleértve a Geekbench-t, a 3DF Zephyr-t, a Blendert, a Reality Capture-t, a LAMMPS-t, a NAMD-t, a waifu2x-t, az OpenFOAM-ot és az Arnold-ot. Minimális támogatást nyújt a cuDNN, cuBLAS, cuSPARSE, cuFFT, NCCL és NVML primitívek és könyvtárak számára.

A CUDA-alkalmazások első indítása ZLUDA alatt jelentős késésekkel történik, mivel a ZLUDA GPU-kódot fordít. A késés a következő indításoknál nem tapasztalható, mivel a lefordított kód a gyorsítótárban tárolódik. A lefordított kód végrehajtása során a teljesítmény közel van a natívhoz. A Geekbench csomag futtatása során az AMD Radeon 6800 XT GPU-n a ZLUDA által kezelt CUDA tesztsorozat jelentősen magasabb teljesítményt mutatott, mint az OpenCL-alapú változat.

Megjelent a ZLUDA eszközkészlete, amely lehetővé teszi a CUDA-alkalmazások futtatását AMD GPU-n.

A hivatalos CUDA Driver API és a visszafejtés során megismert dokumentálatlan CUDA API egyes részeinek támogatása a ZLUDA-ban az API hívások HIP runtime-ra történő átkonvertálásával valósul meg, amely nagymértékben hasonlít a CUDA-ra. Például a cuDeviceGetAttribute() funkció helyett a hipDeviceGetAttribute() kerül alkalmazásra. Hasonló módon a NVIDIA könyvtárakkal, mint a NVML, cuBLAS és cuSPARSE való kompatibilitás is biztosított - az ilyen könyvtárakhoz a ZLUDA az azonos nevű, hasonló funkciókkal rendelkező átkonvertáló könyvtárakat biztosít, amelyek az AMD hasonló könyvtáraira épülnek.

A PTX (Parallel Thread Execution) formátumra fordított alkalmazások GPU-kódja egy speciális fordítóval először LLVM IR köztes formátumra, majd pedig az AMD GPU-hoz megfelelő bináris kódra generálódik.

Megjelent a ZLUDA eszközkészlete, amely lehetővé teszi a CUDA-alkalmazások futtatását AMD GPU-n.


Forrás: opennet.ru
Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster