Rusticlov otvoreni upravljački program certificirano je usklađen s OpenCL 3.0

Programeri projekta Mesa najavili su certifikaciju rusticl drajvera od strane organizacije Khronos, koji je uspješno prošao sve testove iz skupa CTS (Kronos Conformance Test Suite) i prepoznat je kao potpuno kompatibilan sa specifikacijom OpenCL 3.0, koja definira API-je i proširenja jezika C za organiziranje višeplatformskog paralelnog računalstva. Dobivanje certifikata omogućuje vam službenu deklaraciju usklađenosti sa standardima i korištenje povezanih zaštitnih znakova Khronos. Test je obavljen na sustavu s 12-generacijskim integriranim Intel GPU-om uz pomoć Gallium3D Iris drajvera.

Driver je napisan u Rustu, a razvio ga je Karol Herbst iz Red Hata, koji je uključen u razvoj Mesa, Nouveau drivera i OpenCL open stack-a. Rusticle djeluje kao analog Mesa OpenCL sučelja Clover i također je razvijen korištenjem Gallium sučelja koje nudi Mesa. Clover je već dugo napušten i rustikl se postavlja kao njegova buduća zamjena. Osim postizanja kompatibilnosti s OpenCL 3.0, projekt Rusticle razlikuje se od Clover-a po tome što podržava OpenCL ekstenzije za obradu slika, ali još ne podržava format FP16. Za generiranje vezanja za Mesa i OpenCL, što vam omogućuje pozivanje Rust funkcija iz C koda i obrnuto, u Rusticleu se koristi rust-bindgen.

Kod za podršku jezika Rust i upravljački program rusticl prihvaćeni su u mainstreamu Mesa i bit će ponuđeni u izdanju Mesa 22.3, koje se očekuje krajem studenog. Podrška za Rust i rusticl bit će onemogućena prema zadanim postavkama i zahtijevat će izgradnju s izričito navedenim opcijama "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021". Prilikom izgradnje trebat će vam rustc kompajler, bindgen generator vezivanja, LLVM, SPIRV-Tools i SPIRV-LLVM-Translator kao dodatne ovisnosti.

O mogućnosti korištenja jezika Rust u projektu Mesa raspravlja se od 2020. godine. Među prednostima podrške za Rust spominje se povećana sigurnost i kvaliteta upravljačkih programa zbog uklanjanja tipičnih problema pri radu s memorijom, kao i mogućnost uključivanja razvoja trećih strana u Mesu, kao što je Kazan (implementacija Vulkana u Rustu). Nedostaci uključuju povećanu složenost sustava izgradnje, nevoljkost vezivanja za sustav paketa tereta, proširene zahtjeve za okruženje izgradnje i potrebu uključivanja Rust kompilatora u ovisnosti izgradnje potrebne za izgradnju ključnih komponenti radne površine na Linuxu.

Dodatno, možemo istaknuti rad na razvoju Nouveau drivera, koji je također provela Carol Herbst. Upravljački program Nouveau dodao je osnovnu OpenGL podršku za GNU NVIDIA GeForce RTX 30xx temeljenu na mikroarhitekturi Ampere, koja je objavljena od svibnja 2020. Promjene koje se odnose na podršku za nove čipove bit će uključene u Linux 6.2 kernel i Mesa 22.3.

Izvor: opennet.ru

Dodajte komentar