Mesina OpenCL implementacija napisana u rustu već je prošla CTS testove

Nova provedba iz OpenCL-a (rustikalni) razvijen za projekt Mesa, napisan na Rustu, uspješno je položio CTS testove (Kronos Conformance Test Suite) koji koristi konzorcij Khronos za testiranje kompatibilnosti sa OpenCL 3.0 specifikacijama.

Za one koji ne znaju za »Rusticl« trebaju znati da je objavljen kao nova implementacija Mesa OpenCL napisana u programski jezik Rđa.

rustikalni pokrenuo je poznati suradnik Mese Karol Herbst Red Hata koji je započeo kao inženjer na NVIDIA-inom "Nouveau" open source drajveru dok je radio u Red Hatu, a radio je na Mesinoj IT podršci za Clover i drugim nastojanjima. Rusticl je Herbstov pokušaj da nauči programski jezik Rust i također ponudi novu (i nadamo se superiornu) implementaciju OpenCL-a.

Rusticl je puno moderniji fokusiran na OpenCL u usporedbi sa starim Clover kodom i primjetno je, međutim, da Rusticl u ovom trenutku još uvijek nema podršku za OpenCL slike, što je bio još jedan problem s Cloverom.

rustikalni oslanja se na clc za prevođenje OpenCL izvornog koda u SPIR-V. Rusticl također ovisi o NIR-kompatibilnim upravljačkim programima Mesa Gallium3D, ali svi glavni upravljački programi to već rade. Treba napomenuti da je Carol kontaktirala Khronos kako bi dobila službenu certifikaciju OpenCL 3.0 kompatibilnosti u rusticlu.

A sada, rusticl je uspješno prošao Kronos Conformance Test Suite za procjenu kompatibilnosti sa OpenCL 3.0 specifikacijama, kao što je Neil Trevett objavio na Twitteru:

Khronos je ponosan što se tijekom godina odrekao svih naknada za usvajanje MESA-e, a mnoge implementacije MESA-e službeno su usklađene. Super što OpenCL 3.0 iz MESA-e prolazi CTS! Obavijestite nas kada MESA bude spremna izvršiti Ugovor o usvajanju OCL 3.0 i možemo započeti proces...

Testiranje je obavljeno na sustavu s Intel GPU-om 12. generacije build (Alder Lake), s kojim se radilo s Iris Mesa drajverom, ali se spominje da bi projekt trebao raditi i s drugim Mesa drajverima koji koriste netipizirani intermediate (IR) reprezentaciju NIR shadera.

Rusticl djeluje kao pandan Mesinom OpenCL Clover sučelju, a također je razvijen pomoću Mesinog Gallium sučelja. Djetelina je već duže vrijeme u zapuštenom stanju, a rustikal se pozicionira kao njegova buduća zamjena. Osim postizanja kompatibilnosti s OpenCL 3.0, projekt Rusticl se od Clovera razlikuje po tome što podržava proširenja OpenCL za obradu slika, ali još ne podržava FP16 format.

Rusticl koristi rust-bindgen za generiranje veza za Mesa i OpenCL koji omogućuju pozivanje Rust funkcija iz C koda i obrnuto.

O mogućnosti korištenja Rust jezika u projektu Mesa raspravlja se od 2020. Među prednostima Rust podrške navode poboljšanje sigurnosti i kvalitete drajvera otklanjanjem tipičnih problema pri radu s memorijom, kao i mogućnost uključivanja razvoja trećih strana na Mesi, kao što je Kazan (implementacija Vulkana na Rustu).

Među nedostacima je kompliciranje sustava građenja, nespremnost vezanja za sustav paketa korisnog opterećenja, povećanje zahtjeva za okolinu građenja i potreba za uključivanjem Rust kompajlera u potrebne ovisnosti izgradnje. za izradu ključnih desktop komponenti na Linuxu.

Konačno, spominje se da je zahtjev za spajanje Rusticla s Mesom još na čekanju i još nije donesena odluka o uključivanju koda jezika Rust u Mesu, ali se očekuje da će stići u izdanju Mesa 22.2

To je razlog zašto prije nego što se Rusticl prihvati u glavni sastav Mesa, može se koristiti zasebna grana za izgradnju, pri kompajliranju morate navesti parametre izgradnje "-Dgallium-rusticl=true -Dopencl-spirv=true -Dshader -cache=true -Dllvm = istina».

Naps zainteresiran za saznanje više o tome o ovoj novoj specifikaciji, možete provjeriti detalje U sljedećem linku.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.