Mesa OpenCL implementācija, kas rakstīta rūsā, jau ir izturējusi CTS testus

Jaunā ieviešana no OpenCL (zemniecisks) izstrādāts Mesa projektam, rakstīts Rust, ir veiksmīgi nokārtojis CTS testus (Kronos Conformance Test Suite), ko izmanto Khronos konsorcijs, lai pārbaudītu saderību ar OpenCL 3.0 specifikācijām.

Tiem, kas nezina par »Rusticl», jāzina, ka tas ir publicēts kā rakstīta jauna Mesa OpenCL ieviešana programmēšanas valoda Rūsas.

zemniecisks uzsāka pazīstamais Mesa līdzstrādnieks Karols Herbsts Red Hat, kurš sāka kā inženieris NVIDIA "Nouveau" atvērtā pirmkoda draiverim, strādājot Red Hat, un strādāja pie Mesa's Clover IT atbalsta un citiem centieniem. Rusticl ir Herbsta mēģinājums apgūt Rust programmēšanas valodu un arī nodrošināt jaunu (un, cerams, labāku) OpenCL ieviešanu.

Rusticl ir daudz modernāks, koncentrējoties uz OpenCL salīdzinot ar veco Clover kodu, un tas ir pamanāms, ka Rusticl šobrīd joprojām nav OpenCL attēlu atbalsta, kas ir vēl viena problēma ar Clover.

zemniecisks paļaujas uz clc, lai kompilētu OpenCL pirmkodu SPIR-V. Rusticl ir atkarīgs arī no NIR saderīgajiem Mesa Gallium3D draiveriem, taču visi galvenie draiveri jau to dara. Jāatzīmē, ka Kerola sazinājās ar Khronos, lai iegūtu oficiālu sertifikātu par OpenCL 3.0 saderību rusticl.

Un tagad rusticl ir veiksmīgi izturējis Kronos atbilstības testu komplektu, lai novērtētu saderību ar OpenCL 3.0 specifikācijām, kā Twitter paziņoja Neils Trevets:

Khronos lepojas ar to, ka gadu gaitā ir atcēlis visas MESA pieņemšanas maksas, un daudzas MESA ieviešanas ir oficiāli atbilstošas. Lieliski, ka OpenCL 3.0 no MESA iztur CTS! Paziņojiet mums, kad MESA ir gatava izpildīt OCL 3.0 pieņemšanas līgumu, un mēs varam sākt procesu…

Testēšana tika veikta sistēmā ar 12. paaudzes Intel GPU build (Alder Lake), ar kuru darbs tika veikts ar Iris Mesa draiveri, taču tiek minēts, ka projektam vajadzētu strādāt ar citiem Mesa draiveriem, kas izmanto NIR ēnotāju untyped intermediate (IR) attēlojumu.

Rusticl darbojas kā Mesa OpenCL Clover saskarnes līdzinieks, kā arī tiek izstrādāts, izmantojot Mesa Gallium saskarni. Āboliņš ilgu laiku ir bijis novārtā, un rusticl tiek pozicionēts kā tā nākotnes aizstājējs. Papildus OpenCL 3.0 saderības sasniegšanai Rusticl projekts atšķiras no Clover ar to, ka atbalsta OpenCL paplašinājumus attēlu apstrādei, bet vēl neatbalsta FP16 formātu.

Rusticl izmanto rust-bindgen lai ģenerētu Mesa un OpenCL saistījumus, kas ļauj Rust funkcijas izsaukt no C koda un otrādi.

Rust valodas izmantošanas iespēja Mesa projektā tiek apspriesta kopš 2020. gada. Pie Rust atbalsta priekšrocībām tiek minēta draiveru drošības un kvalitātes uzlabošana, novēršot tipiskas problēmas darbā ar atmiņu, kā arī iespēja iekļaut izstrādnes. trešās puses Mesa, piemēram, Kazaņa (Vulkan ieviešana vietnē Rust).

Starp trūkumiem var minēt būvēšanas sistēmas sarežģījumus, nevēlēšanos saistīties ar lietderīgās slodzes pakotņu sistēmu, būvniecības vides prasību palielināšanos un nepieciešamību iekļaut Rust kompilatoru būvējuma atkarībās, kas tiek nodrošinātas. lai izveidotu galvenos darbvirsmas komponentus operētājsistēmā Linux.

Visbeidzot, tiek minēts, ka joprojām tiek izskatīts pieprasījums apvienot Rusticl ar Mesa un vēl nav pieņemts lēmums par Rust valodas koda iekļaušanu Mesa, taču ir paredzēts, ka tas nonāks Mesa 22.2 laidienā.

Tieši tāpēc pirms Rusticl pieņemšanas galvenajā Mesa kompozīcijā var veidot atsevišķu atzaru, kompilējot jānorāda būvēšanas parametri "-Dgallium-rusticl=true -Dopencl-spirv=true -Dshader -cache=true -Dllvm =patiess».

Ja Jums ir interesē uzzināt vairāk par to par šo jauno specifikāciju, varat pārbaudīt sīkāku informāciju Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.