Rusticl-driveren er certificeret til kompatibilitet med OpenCL 3.0

Mesa-projektets udviklere har offentliggjort certificeringen af rusticl-driveren af Khronos-organisationen, som har bestået alle tests i CTS (Kronos Conformance Test Suite) og er blevet anerkendt som fuldstændig kompatibel med OpenCL 3.0-specifikationen, der definerer API og sprogudvidelser for at muliggøre tværplatformparallelle beregninger. At opnå certificeringen giver mulighed for officielt at erklære kompatibilitet med standarderne og anvende de tilknyttede Khronos-varemærker. Testen blev udført på et system med 12. generations integrerede Intel GPU'er, hvor Gallium3D-driveren Iris blev brugt.

Driveren er skrevet i Rust og udviklet af Karol Herbst fra Red Hat, der deltager i udviklingen af Mesa, Nouveau-driveren og den åbne OpenCL-stak. Rusticl fungerer som en erstatning for Mesa's OpenCL-front-end Clover og er også udviklet ved hjælp af det interface, der leveres i Mesa, Gallium. Clover har længe været i forladt tilstand, og rusticl positioneres som dens fremtidige erstatning. Udover at opnå kompatibilitet med OpenCL 3.0 adskiller Rusticl-projektet sig fra Clover ved at understøtte OpenCL-udvidelser til billedbehandling, men understøtter endnu ikke FP16-formatet. Rusticl bruger rust-bindgen til at generere bindings til Mesa og OpenCL, hvilket muliggør kald af Rust-funktioner fra C-kode og omvendt.

Koden til understøttelse af Rust-sproget og rusticl-driveren er blevet accepteret i Mesa's hovedlinje og vil blive tilbudt i Mesa 22.3-udgaven, der forventes i slutningen af november. Understøttelse af Rust og rusticl vil være deaktiveret som standard og kræve bygning med eksplicit angivelse af indstillingerne "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021". Ved bygning vil der være behov for yderligere afhængigheder, nemlig rustc-kompilatoren, bindingsgeneratoren bindgen, LLVM, SPIRV-Tools-værktøjssættet og SPIRV-LLVM-Translator.

Muligheden for at bruge Rust-sproget i Mesa-projektet har været under diskussion siden 2020. Fordele ved Rust-understøttelsen inkluderer øget sikkerhed og kvalitet af drivere ved at eliminere typiske problemer med hukommelse samt muligheden for at inkludere eksterne værktøjer som Kazan (en Vulkan-implementering i Rust). Ulemperne inkluderer en kompleksitet i buildsystemet, modvilje mod at binde sig til pakkesystemet cargo, udvidede krav til byggeomgivelser og nødvendigheden af at inkludere Rust-kompilatoren blandt byggeafhængighederne, der er essentielle for opbygningen af nøglernes komponenter i Linux-miljøet.

Derudover kan arbejdet med at udvikle Nouveau-driveren, også udført af Karol Herbst, nævnes. Den nye Nouveau-driver har fået grundlæggende støtte til OpenGL for GNU NVIDIA GeForce RTX 30xx baseret på mikroarkitekturen Ampere, der er blevet udgivet siden maj 2020. Ændringer relateret til understøttelsen af de nye chips vil blive inkluderet i Linux-kernen 6.2 og Mesa 22.3.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster