Rusticle malfermfonteca ŝoforo estas atestita kongrua kun OpenCL 3.0

La programistoj de la projekto Mesa anoncis la atestadon de la organizo Khronos de la rusticl-ŝoforo, kiu sukcese trapasis ĉiujn provojn de la aro CTS (Kronos Conformance Test Suite) kaj estas rekonita kiel plene kongrua kun la specifo OpenCL 3.0, kiu difinas API-ojn kaj etendaĵoj de la C-lingvo por organizado de transplatforma paralela komputado. Akiro de atestilo permesas vin oficiale deklari konformecon al la normoj kaj uzi la rilatajn markojn de Khronos. La testo estis farita sur sistemo kun 12-generaciaj integraj Intel-GPUoj uzante la Gallium3D Iris-ŝoforon.

La ŝoforo estas skribita en Rust kaj evoluigita fare de Karol Herbst de Red Hat, kiu estas implikita en la evoluo de Mesa, la Nouveau-ŝoforo kaj la OpenCL malferma stako. Rusticle funkcias kiel analogo de la OpenCL-interfaco Clover de Mesa kaj ankaŭ estas evoluigita uzante la Gallium-interfacon disponigitan en Mesa. Trifolio estis forlasita dum longa tempo kaj rusticl estas poziciigita kiel ĝia estonta anstataŭaĵo. Aldone al atingado de OpenCL 3.0-kongruo, la Rusticle-projekto diferencas de Clover en subteno de OpenCL-etendaĵoj por bildprilaborado, sed ankoraŭ ne subtenas la FP16-formaton. Por generi ligojn por Mesa kaj OpenCL, permesante al vi voki Rust-funkciojn de C-kodo kaj inverse, rust-bindgen estas uzata en Rusticle.

La Rust-lingva subtenkodo kaj la rusticl-ŝoforo estis akceptitaj en la ĉeftendencon de Mesa kaj estos ofertitaj en la eldono de Mesa 22.3, atendata fine de novembro. Rust kaj rusticl-subteno estos malŝaltita defaŭlte kaj postulos konstruon kun la "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021" opcioj eksplicite specifitaj. Konstruante, vi bezonos la rustc-kompililon, bindgen-ligan generatoron, LLVM, SPIRV-Tools kaj SPIRV-LLVM-Translator kiel aldonajn dependecojn.

La ebleco uzi la Rust-lingvon en la projekto Mesa estas diskutata ekde 2020. Inter la avantaĝoj de Rust-subteno, la pliigita sekureco kaj kvalito de ŝoforoj estas menciitaj pro forigo de tipaj problemoj dum laboro kun memoro, same kiel la kapablo inkludi triapartajn evoluojn en Mesa, kiel Kazan (efektivigo de Vulkan). en Rusto). Malavantaĝoj inkludas pliigitan kompleksecon de la konstrusistemo, malemo esti ligita al la ŝarĝpakaĵsistemo, vastigitaj postuloj por la konstrumedio, kaj la bezonon inkludi la Rust-kompililon en la konstrudependecoj necesaj por konstrui esencajn labortablaj komponentoj sur Linukso.

Aldone, ni povas noti la laboron pri la evoluo de la Nouveau-ŝoforo, ankaŭ farita de Carol Herbst. La Nouveau-ŝoforo aldonis bazan OpenGL-subtenon por GNU NVIDIA GeForce RTX 30xx bazita sur la Ampere-mikroarkitekturo, publikigita ekde majo 2020. Ŝanĝoj rilataj al subteno por novaj blatoj estos inkluzivitaj en la Linukso 6.2-kerno kaj Mesa 22.3.

fonto: opennet.ru

Aldoni komenton