Rusticl er nå sertifisert og støtter OpenCL 3.0

rust-2

Mesas Rusticl-kontroller har bestått Conformance Test Suite (CTS)-testene

den utviklere av Mesa-prosjektet kunngjorde sertifiseringen av den rustikke kontrolleren av Khronos-organisasjonen, some besto alle CTS-tester (Kronos Conformance Test Suite) og ble anerkjent som fullt kompatibel med OpenCL 3.0-spesifikasjonen, som definerer C-språk APIer og utvidelser for å orkestrere parallell databehandling på tvers av plattformer.

Med dette har det vært mulig å få et sertifikat som tillater offisielt å erklære kompatibilitet med standardene og bruke Khronos-varemerkene knyttet til dem.

Driveren er skrevet i Rust og utviklet av Red Hats Karol Herbst, som er involvert i utviklingen av Mesa, Nouveau-driveren og den åpne OpenCL-stakken.

Rusticl består alle CTS-tester

Rusticl har nettopp blitt den første Rust-koden i Mesa, med en OpenCL-implementering som nylig ble slått sammen i Mesa 22.3-utgivelsen, og det skal bemerkes at testing ble utført på et system med en integrert 12. generasjons Intel GPU ved bruk av Gallium3D Iris-driveren.

For de som ikke er klar over kontrolleren, bør Rusticl vite at dette fungerer som et motstykke til Mesas OpenCL Clover-grensesnitt og er også utviklet ved hjelp av Mesas Gallium-grensesnitt. Clover har lenge vært neglisjert og rustikk er posisjonert som dens fremtidige erstatning. I tillegg til å oppnå OpenCL 3.0-kompatibilitet, skiller Rusticl-prosjektet seg fra Clover ved at det støtter OpenCL-utvidelser for bildebehandling, men støtter ennå ikke FP16-formatet.

Rusticl bruker rust-bindgen for å generere bindinger for Mesa og OpenCL som lar Rust-funksjoner kalles fra C-kode og omvendt. Muligheten for å bruke Rust-språket i Mesa-prosjektet har vært diskutert siden 2020.

Blant de fordelene med ruststøtte nevner forbedring av sikkerheten og kvaliteten til sjåfører ved å eliminere typiske problemer når du arbeider med hukommelse, så vel som Mulighet for å inkludere tredjepartsutviklinger i Mesa, for eksempel Kazan (en implementering av Vulkan in Rust). Blant manglene er det en komplikasjon av byggesystemet, manglende vilje til å koble til lastpakkesystemet, økte krav til byggemiljøet, og behovet for å inkludere Rust-kompilatoren i byggeavhengighetene som kreves for å bygge nøkkelen. skrivebordskomponenter på Linux.

Koden for å støtte Rust-språket og den rustikke kontrolleren har blitt akseptert i mainstream Mesa og vil bli tilbudt i Mesa 22.3-utgivelsen, som forventes i slutten av november. Rust og Rusticl-støtte vil være deaktivert som standard og vil kreve kompilering med eksplisitte alternativer "-D gallium-rusticl=true -Dllvm=aktivert -Drust_std=2021".

Ved kompilering kreves rustc-kompilatoren, bindgen, LLVM, SPIRV-Tools og SPIRV-LLVM-Translator som ekstra avhengigheter.

Det skal nevnes at hanOpenCL 3.0 API dekker alle OpenCL-versjoner (1.2, 2.x), uten å gi separate spesifikasjoner for hver versjon. OpenCL 3.0 gir muligheten til å utvide kjernefunksjonaliteten gjennom integrering av tilleggsspesifikasjoner som vil overlappe i form av alternativer uten å blokkere den monolittiske naturen til OpenCL 1.2/2.X.

I tillegg kommer spesifikasjonen OpenCL 3.0 har blitt justert med miljøet, utvidelser og spesifikasjoner for den generiske mellomrepresentasjonen SPIR-V, det også bruker Vulkan API. Med den har støtte for SPIR-V 1.3-spesifikasjonen også blitt lagt til OpenCL 3.0-kjernen som en valgfri funksjon. Ved å bruke SPIR-V-mellomrepresentasjonen for beregningskjerner, er støtte for operasjoner med undergrupper lagt til.

Til slutt er det også verdt å merke seg arbeidet med utviklingen av Nouveau-driveren, også utført av Carol Herbst. Nouveau-driveren legger til grunnleggende OpenGL-støtte for GNU NVIDIA GeForce RTX 30xx basert på Ampere-mikroarkitektur utgitt siden mai 2020. Endringer knyttet til ny brikkestøtte vil bli inkludert i Linux 6.2 og Mesa 22.3-kjernen.

Hvis du er interessert i å vite mer om det, kan du se detaljene I den følgende lenken.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.