„Mesa“ „OpenCL“ diegimas, parašytas rūdimis, jau išlaikė CTS testus

Naujas įgyvendinimas iš OpenCL (kaimiškas) sukurta Mesa projektui, parašyta Rust, sėkmingai išlaikė CTS testus („Kronos Conformance Test Suite“), kurį naudoja „Khronos“ konsorciumas, kad patikrintų suderinamumą su „OpenCL 3.0“ specifikacijomis.

Tie, kurie nežino apie »Rusticl“, turėtų žinoti, kad jis buvo paskelbtas kaip parašyta nauja „Mesa OpenCL“ versija programavimo kalba Rūdys.

kaimiškas pradėjo žinomas Mesos bendradarbis Karolis Herbstas Red Hat, kuris pradėjo dirbti NVIDIA „Nouveau“ atvirojo kodo tvarkyklės inžinieriumi dirbdamas „Red Hat“ ir dirbo su Mesa Clover IT palaikymu ir kitomis pastangomis. „Rusticl“ yra „Herbst“ bandymas išmokti „Rust“ programavimo kalbos ir taip pat pateikti naują (ir, tikiuosi, pranašesnį) OpenCL įgyvendinimą.

Rusticl yra daug modernesnis, orientuotas į OpenCL Palyginti su senuoju Clover kodu, tačiau tai pastebima, tačiau šiuo metu Rusticl vis dar nepalaiko OpenCL vaizdo palaikymo, o tai buvo dar viena problema su Clover.

kaimiškas remiasi clc, kad sukompiliuotų OpenCL šaltinio kodą į SPIR-V. „Rusticl“ taip pat priklauso nuo NIR suderinamų „Mesa Gallium3D“ tvarkyklių, tačiau tai jau daro visos pagrindinės tvarkyklės. Reikėtų pažymėti, kad Carol susisiekė su Khronos, kad gautų oficialų OpenCL 3.0 suderinamumo su rusticl sertifikatą.

Ir dabar „rusticl“ sėkmingai išlaikė „Kronos Conformance Test Suite“, kad įvertintų suderinamumą su „OpenCL 3.0“ specifikacijomis, kaip „Twitter“ paskelbė Neilas Trevettas:

„Khronos“ didžiuojasi, kad bėgant metams atsisakė visų MESA priėmimo mokesčių, o daugelis MESA diegimų oficialiai atitinka reikalavimus. Puiku, kad OpenCL 3.0 iš MESA aplenkia CTS! Praneškite mums, kai MESA bus pasirengusi vykdyti OCL 3.0 priėmimo sutartį ir galėsime pradėti procesą...

Testavimas buvo atliktas sistemoje su 12-os kartos Intel GPU build (Alder Lake), su kuriuo buvo dirbama su Iris Mesa tvarkykle, tačiau minima, kad projektas turėtų veikti su kitomis Mesa tvarkyklėmis, kurios naudoja NIR shader'ių untyped intermediate (IR) atvaizdavimą.

Rusticl veikia kaip Mesa OpenCL Clover sąsajos atitikmuo ir taip pat sukurta naudojant Mesa Gallium sąsają. Dobilas ilgą laiką buvo apleistas, o rusticl laikomas būsimu jo pakaitalu. Be OpenCL 3.0 suderinamumo, „Rusticl“ projektas skiriasi nuo „Clover“ tuo, kad palaiko „OpenCL“ plėtinius vaizdo apdorojimui, tačiau dar nepalaiko FP16 formato.

Rusticl naudoja rust-bindgen sukurti Mesa ir OpenCL sąsajas, leidžiančias iškviesti Rust funkcijas iš C kodo ir atvirkščiai.

Galimybė naudoti Rust kalbą projekte Mesa diskutuojama nuo 2020 m. Tarp Rust palaikymo privalumų minima tvarkyklių saugumo ir kokybės gerinimas pašalinant tipines problemas dirbant su atmintimi, taip pat galimybė įtraukti patobulinimus. trečiųjų šalių Mesa, pvz., Kazan (Vulkan diegimas sistemoje „Rust“).

Tarp trūkumų yra kūrimo sistemos komplikacija, nenoras prisijungti prie naudingosios apkrovos paketo sistemos, padidėję reikalavimai kūrimo aplinkai ir būtinybė įtraukti Rust kompiliatorių į pateikiamas kūrimo priklausomybes. sukurti pagrindinius darbalaukio komponentus sistemoje „Linux“.

Galiausiai, minima, kad prašymas sujungti Rusticl su Mesa dar laukiamas ir dar nebuvo priimtas sprendimas įtraukti Rust kalbos kodą į „Mesa“, tačiau tikimasi, kad jis pasirodys „Mesa 22.2“ versijoje.

Štai kodėl prieš priimant Rusticl į pagrindinę Mesa kompoziciją, statyti galima naudoti atskirą šaką, kurią kompiliuojant reikia nurodyti pastatymo parametrus "-Dgallium-rusticl=true -Dopencl-spirv=true -Dshader -cache=true -Dllvm = tiesa».

Kakleliai domina sužinoti daugiau apie tai apie šią naują specifikaciją galite patikrinti išsamią informaciją Šioje nuorodoje.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.