Ang Rusticl ay sertipikado na ngayon at sumusuporta sa OpenCL 3.0

kalawang-2

Ang Rusticl controller ng Mesa ay matagumpay na nakapasa sa mga pagsubok sa Conformance Test Suite (CTS).

Los inihayag ng mga developer ng proyekto ng Mesa ang sertipikasyon ng rustcl controller ng organisasyong Khronos, nae matagumpay na naipasa ang lahat ng mga pagsusulit sa CTS (Kronos Conformance Test Suite) at kinilala bilang ganap na sumusunod sa pagtutukoy ng OpenCL 3.0, na tumutukoy sa mga C language API at mga extension para mag-orkestrate ng cross-platform parallel computing.

Sa pamamagitan nito, naging posible na makakuha ng sertipiko na nagbibigay-daan sa opisyal na pagdedeklara ng pagiging tugma sa mga pamantayan at paggamit ng mga trademark ng Khronos na nauugnay sa kanila.

Ang driver ay nakasulat sa Rust at binuo ng Red Hat's Karol Herbst, na kasangkot sa pagbuo ng Mesa, ang Nouveau driver, at ang bukas na OpenCL stack.

Pumapasa si Rusticl sa lahat ng pagsusulit sa CTS

Ang Rusticl ay naging unang Rust code sa loob ng Mesa, na may isang OpenCL na pagpapatupad kamakailan na pinagsama sa Mesa 22.3 release at dapat tandaan na ang pagsubok ay isinagawa sa isang system na may pinagsamang ika-12 henerasyong Intel GPU gamit ang Gallium3D Iris driver.

Para sa mga hindi nakakaalam ng controller, dapat malaman ni Rusticl na ito gumaganap bilang isang katapat sa OpenCL Clover interface ng Mesa at binuo din gamit ang interface ng Gallium ng Mesa. Ang Clover ay matagal nang napabayaan at ang rusticl ay nakaposisyon bilang kapalit nito sa hinaharap. Bilang karagdagan sa pagkamit ng OpenCL 3.0 compatibility, ang proyekto ng Rusticl ay naiiba sa Clover dahil sinusuportahan nito ang mga extension ng OpenCL para sa pagpoproseso ng imahe, ngunit hindi pa sinusuportahan ang format na FP16.

Gumagamit si Rusticl ng rust-bindgen upang makabuo ng mga binding para sa Mesa at OpenCL na nagpapahintulot sa mga function ng Rust na tawagan mula sa C code at vice versa. Ang posibilidad ng paggamit ng Rust na wika sa proyekto ng Mesa ay tinalakay mula noong 2020.

Kabilang sa mga Ang mga bentahe ng Rust support ay binabanggit ang pagpapabuti ng seguridad at kalidad ng mga driver sa pamamagitan ng pag-aalis ng mga karaniwang problema kapag nagtatrabaho sa memorya, pati na rin ang Posibilidad ng pagsasama ng mga pag-unlad ng third-party sa Mesa, tulad ng Kazan (isang pagpapatupad ng Vulkan sa Rust). Kabilang sa mga pagkukulang, mayroong komplikasyon ng build system, hindi pagpayag na mag-link sa load package system, pagtaas ng mga kinakailangan para sa build environment, at ang pangangailangang isama ang Rust compiler sa build dependencies na kinakailangan para bumuo ng susi. mga bahagi ng desktop sa Linux.

Ang code upang suportahan ang Rust na wika at ang rusticl controller ay tinanggap sa mainstream na Mesa at iaalok sa paglabas ng Mesa 22.3, na inaasahang sa huling bahagi ng Nobyembre. Ang suporta sa Rust at Rusticl ay idi-disable bilang default at mangangailangan ng compilation na may mga tahasang opsyon "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021".

Kapag nag-compile, ang rustc compiler, bindgen, LLVM, SPIRV-Tools, at SPIRV-LLVM-Translator ay kinakailangan bilang mga karagdagang dependency.

Dapat banggitin na siyaSinasaklaw ng OpenCL 3.0 API ang lahat ng bersyon ng OpenCL (1.2, 2.x), nang hindi nagbibigay ng hiwalay na mga detalye para sa bawat bersyon. Nagbibigay ang OpenCL 3.0 ng kakayahang palawigin ang pangunahing functionality sa pamamagitan ng pagsasama ng mga karagdagang detalye na magkakapatong sa anyo ng mga opsyon nang hindi hinaharangan ang monolitikong katangian ng OpenCL 1.2/2.X.

Bilang karagdagan, ang pagtutukoy Ang OpenCL 3.0 ay nakahanay sa kapaligiran, mga extension at mga detalye ng ang generic na intermediate na representasyon SPIR-V, yun din gumagamit ng Vulkan API. Sa pamamagitan nito, ang suporta para sa SPIR-V 1.3 na detalye ay naidagdag din sa OpenCL 3.0 kernel bilang isang opsyonal na tampok. Sa pamamagitan ng paggamit ng intermediate na representasyon ng SPIR-V para sa mga computational kernel, naidagdag ang suporta para sa mga operasyon na may mga subgroup.

Sa wakas, ito ay nagkakahalaga din na tandaan ang gawain sa pagbuo ng driver ng Nouveau, na ginawa rin ni Carol Herbst. Ang driver ng Nouveau ay nagdaragdag ng pangunahing suporta sa OpenGL para sa GNU NVIDIA GeForce RTX 30xx batay sa Ampere microarchitecture na inilabas mula noong Mayo 2020. Ang mga pagbabagong nauugnay sa bagong suporta sa chip ay isasama sa Linux 6.2 at Mesa 22.3 kernel.

Kung interesado kang malaman ang higit pa tungkol dito, maaari mong konsultahin ang mga detalye Sa sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.