Mesa's OpenCL-implementatie geschreven in roest heeft de CTS-tests al doorstaan

De nieuwe implementatie van OpenCL (rustiek) ontwikkeld voor het Mesa-project, geschreven in Rust, heeft de CTS-tests met succes doorstaan (Kronos Conformance Test Suite) gebruikt door het Khronos-consortium om de compatibiliteit met de OpenCL 3.0-specificaties te testen.

Voor degenen die niet op de hoogte zijn van »Rusticl», ze moeten weten dat het is gepubliceerd als een nieuwe implementatie van Mesa OpenCL geschreven in programmeertaal Roest.

rustiek werd opgericht door de bekende Mesa-medewerker Karol Herbst van Red Hat, die begon als ingenieur op NVIDIA's "Nouveau" open source driver terwijl hij bij Red Hat werkte, en werkte aan Mesa's Clover IT-ondersteuning en andere inspanningen. Rusticl is een poging van Herbst om de programmeertaal Rust te leren en ook om een ​​nieuwe (en hopelijk superieure) implementatie van OpenCL te bieden.

Rusticl is veel moderner gericht op OpenCL vergeleken met de oude Clover-code en het is echter opvallend dat Rusticl op dit moment nog steeds geen OpenCL-beeldondersteuning heeft, wat een ander probleem was met Clover.

rustiek vertrouwt op clc om OpenCL-broncode in SPIR-V te compileren. Rusticl is ook afhankelijk van de NIR-compatibele Mesa Gallium3D-stuurprogramma's, maar alle grote stuurprogramma's doen dat al. Opgemerkt moet worden dat Carol contact heeft opgenomen met Khronos om de officiële certificering van OpenCL 3.0-compatibiliteit in rustiek te verkrijgen.

En nu heeft Rustic met succes de Kronos Conformance Test Suite doorstaan ​​om de compatibiliteit met de OpenCL 3.0-specificaties te beoordelen, zoals Neil Trevett op Twitter aankondigde:

Khronos is er trots op dat hij in de loop der jaren heeft afgezien van alle MESA-adoptievergoedingen, en veel MESA-implementaties zijn officieel conform. Geweldig dat OpenCL 3.0 van MESA CTS doorstaat! Laat ons weten wanneer MESA klaar is om de OCL 3.0-adoptieovereenkomst uit te voeren en we kunnen het proces starten...

Het testen is gedaan op een systeem met 12e generatie Intel GPU build (Alder Lake), waarmee het werk is gedaan met de Iris Mesa-driver, maar er wordt vermeld dat het project zou moeten werken met andere Mesa-drivers die de niet-getypeerde intermediaire (IR) representatie van de NIR shaders gebruiken.

Rusticl fungeert als tegenhanger van Mesa's OpenCL Clover-interface en is ook ontwikkeld met behulp van Mesa's Gallium-interface. Clover is lange tijd in een staat van verwaarlozing geweest en rustiek wordt gepositioneerd als zijn toekomstige vervanger. Naast het bereiken van compatibiliteit met OpenCL 3.0, verschilt het Rusticl-project van Clover doordat het OpenCL-extensies voor beeldverwerking ondersteunt, maar het FP16-formaat nog niet.

Rusticl gebruikt roest-bindgen om bindingen voor Mesa en OpenCL te genereren waarmee Rust-functies kunnen worden aangeroepen vanuit C-code en vice versa.

De mogelijkheid om de Rust-taal in het Mesa-project te gebruiken is sinds 2020 besproken. Onder de voordelen van Rust-ondersteuning noemen ze het verbeteren van de veiligheid en kwaliteit van de stuurprogramma's door typische problemen bij het werken met geheugen te elimineren, evenals de mogelijkheid om ontwikkelingen op te nemen van derden op Mesa, zoals Kazan (een Vulkan-implementatie op Rust).

Een van de tekortkomingen is een complicatie van het buildsysteem, een onwil om te binden aan het payload-pakketsysteem, een toename van de vereisten voor de build-omgeving en de noodzaak om de Rust-compiler op te nemen in de build-afhankelijkheden die zijn vereist. om belangrijke desktopcomponenten op Linux te bouwen.

Tenslotte er wordt vermeld dat het verzoek om Rusticl samen te voegen met Mesa nog in behandeling is en er is nog geen beslissing genomen over het opnemen van de Rust-taalcode in Mesa, maar deze zal naar verwachting aankomen in de Mesa 22.2-release

Dit is de reden waarom voordat Rusticl wordt geaccepteerd in de hoofdcompositie van Mesa, een aparte vertakking kan worden gebruikt om te bouwen. Bij het compileren moet u de bouwparameters specificeren "-Dgallium-rusticl=true -Dopencl-spirv=true -Dshader -cache=true -Dllvm =waar».

Wanneer je geïnteresseerd om er meer over te weten over deze nieuwe specificatie, kunt u de details bekijken: In de volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.