Collabora na-emepụta ihe mgbakwunye maka ịgba ọsọ OpenCL na OpenGL n'elu DirectX

Mmekọrịta ụlọ ọrụ ọkọnọ onye ọkwọ ụgbọ ala Gallium ọhụrụ maka Mesa, nke na-arụ ọrụ oyi akwa maka ịhazi ọrụ OpenCL 1.2 na OpenGL 3.3 API n'elu ndị ọkwọ ụgbọ ala na-akwado DirectX 12 (D3D12). Koodu bipụtara n'okpuru ikike MIT.

Ọkwọ ụgbọala a chọrọ na-enye gị ohere iji Mesa na ngwaọrụ ndị na-akwadoghị OpenCL na OpenGL, yana dịka mmalite maka ibubata ngwa OpenGL/OpenCL ka ọ na-agba n'elu D3D12. Maka ndị na-emepụta GPU, subsystem na-eme ka o kwe omume ịnye nkwado maka OpenCL na OpenGL, ma ọ bụrụ na ọ bụ naanị ndị ọkwọ ụgbọala nwere nkwado D3D12 dị.

Otu n'ime atụmatụ ndị a na-eme ozugbo bụ mmezu nke ịgafe n'ụzọ zuru ezu nke ule ndakọrịta nke OpenCL 1.2 na OpenGL 3.3, ịlele ndakọrịta na ngwa yana nsonye mmepe na ihe mejupụtara Mesa. A na-emekọ mmepe na ndị injinia Microsoft na-emepe emepe meghee ngwá ọrụ D3D11N12 maka ibufe egwuregwu site na D3D11 gaa na D3D12 na ọba akwụkwọ D3D12TranslationLayer, nke na-arụ ọrụ primitives ọkọlọtọ ọkọlọtọ n'elu D3D12.

Mmejuputa a na-agụnye onye ọkwọ ụgbọ ala Gallium, OpenCL compiler, OpenCL Runtime na NIR-to-DXIL shader compiler, nke na-agbanwe ihe nnọchianya nke NIR shaders eji na Mesa n'ime DXIL (DirectX Intermediate Language) usoro ọnụọgụ abụọ, kwadoro na DirectX 12 ma dabere na ya. LLVM 3.7 bitcodeDirectX Shader Compiler sitere na Microsoft bụ n'ezie ndụdụ agbatị nke LLVM 3.7). A na-akwado ihe nchịkọta OpenCL dabere na mmepe nke ọrụ LLVM na ngwaọrụ SPIRV-LLVM.

A na-achịkọta isi mmalite nwere ndọtị OpenCL site na iji clang n'ime LLVM intermediate pseudocode (LLVM IR), nke a na-atụgharị ka ọ bụrụ ihe nnọchianya etiti nke kernel OpenCL n'ụdị SPIR-V. A na-agafe Cores dị na ihe nnọchianya SPIR-V na Mesa, sụgharịa ya na usoro NIR, na-eme ka ọ dịkwuo mma ma nyefee ya na NIR-to-DXIL iji mepụta ihe nkpuchi na usoro DXIL, kwesịrị ekwesị maka igbu ya na GPU site na iji oge ọsọ ọsọ nke 12 dabeere na DirectX.
Kama Clover, OpenCL mmejuputa a na-eji na Mesa, a na-atụpụta oge ọhụrụ OpenCL, na-enye ohere ka mgbanwe ndị ọzọ na DirectX 12 API.

Collabora na-emepụta ihe mgbakwunye maka ịgba ọsọ OpenCL na OpenGL n'elu DirectX

A na-akwado ndị ọkwọ ụgbọala OpenCL na OpenGL site na iji interface Gallium enyere na Mesa, nke na-enye gị ohere ịmepụta ndị ọkwọ ụgbọ ala na-abanyeghị na nkọwa nke OpenGL wee tụgharịa oku OpenGL n'isi nso na eserese eserese nke GPU ọgbara ọhụrụ na-arụ ọrụ. Onye ọkwọ ụgbọ ala Gallium, na-anabata iwu OpenGL yana mgbe ị na-eji NIR-to-DXIL ntụgharị asụsụ
na-ewepụta ihe nchekwa iwu nke a na-egbu na GPU site na iji ọkwọ ụgbọ ala D3D12.

isi: opennet.ru

Tinye a comment