OpenGL-i ja Vulkani tasuta juurutuse Mesa 22.3 väljalase

Avaldatud on OpenGL-i ja Vulkani API-de tasuta juurutamise väljalase – Mesa 22.3.0. Mesa 22.3.0 haru esimene väljalase on eksperimentaalses olekus – pärast koodi lõplikku stabiliseerimist ilmub stabiilne versioon 22.3.1.

Mesa 22.3 pakub tuge Vulkan 1.3 graafika API-le anv Inteli GPU-de jaoks, radv AMD GPU-de jaoks, tu Qualcommi GPU-de jaoks ja emulaatorirežiimis (vn). Vulkan 1.1 tugi on rakendatud lavapipe (lvp) tarkvara rasteriseerijas ja Vulkan 1.0 v3dv draiveris (Broadcom VideoCore VI GPU alates Raspberry Pi 4).

Mesa pakub ka täielikku OpenGL 4.6 tuge 965, iirise (Intel), radeonsi (AMD), zinki ja llvmpipe draiveritele. OpenGL 4.5 tugi on saadaval AMD (r600), NVIDIA (nvc0) ja Qualcomm Adreno (freedreno) GPU jaoks, OpenGL 4.3 virgl jaoks (virgil3D virtuaalne GPU QEMU/KVM jaoks) ja OpenGL 4.2 d3d12 draiveri jaoks (kiht OpenGL-i korraldamiseks töötada DirectX 12 peal).

Peamised uuendused:

  • Qualcomm Adreno GPU-de freedreno draiver toetab OpenGL 4.5 graafika API-d ja emulaatori draiver (vn) toetab Vulkan 1.3 API-t.
  • Panfrosti draiver rakendab kettale varjutajate vahemällu salvestamise võimalust ja lisab toe Mali T620 GPU-le. Draiver ühildub OpenGL 3.1 ja OpenGL ES 3.1 spetsifikatsioonidega.
  • RADV (AMD) Vulkani draiver on lisanud toe GFX11/RDNA3 GPU-dele (Radeon RX 7000 seeria). Kiirte jälgimise kood on optimeeritud. Lisatud on R8G8B8, B8G8R8 ja R16G16B16 pikslivormingute tugi ning 64-bitised tipupuhvri vormingud. Lisati tugi laiendatudDynamicState2PatchControlPoints lipule, mis määrab laienduse VK_EXT_extended_dynamic_state2 toe. Integreeritud Radeon Raytracing Analyzer.
  • Pakett sisaldab Rusticle'i draiverit koos OpenCL 3.0 spetsifikatsiooni juurutamisega, mis määratleb API ja C-keele laiendused platvormidevahelise paralleelarvutuse korraldamiseks. Draiver on kirjutatud Rust keeles, mis on välja töötatud Mesas pakutava Galliumi liidese abil ja toimib Mesas oleva Clover OpenCLi esiprogrammi analoogina. Ristik on pikka aega hüljatud ja rusticl on selle tulevane asendaja. Rusti ja rusticli tugi on vaikimisi keelatud ning nõuab järgu selgesõnaliste suvanditega "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021". Ehitamisel on täiendavate sõltuvustena vaja rustc kompilaatorit, bindgen sidumisgeneraatorit, LLVM-i, SPIRV-Tools ja SPIRV-LLVM-Translator.
  • RadeonSI draiver sisaldab vaikimisi OpenGL-i kaudu mitme lõimega renderdamise tuge.
  • Tutvustas Mesa-DB, uut tüüpi varjundi vahemälu, mis salvestab andmed ühte faili.
  • Lisatud tugi OpenGL-i laiendustele:
    • GL_ARB_shader_clock llvmpipe jaoks.
    • GL_KHR_blend_equation_advanced_coherent tsinki jaoks.
    • GL_NV_shader_atomic_float llvmpipe jaoks.
  • Lisatud tugi Vulkani laiendustele:
    • VK_KHR_shader_clock lavapipe jaoks.
    • VK_EXT_attachment_feedback_loop_layout RADV, lavapipe jaoks.
    • VK_KHR_globaalne_prioriteet RADV jaoks.
    • VK_EXT_load_store_op_none RADV jaoks.
    • VK_EXT_mutable_descriptor_type RADV jaoks.
    • VK_EXT_shader_atomic_float lvp jaoks.
    • VK_EXT_shader_atomic_float2 lvp jaoks.
    • VK_EXT_image_robustness v3dv jaoks.
    • VK_EXT_extended_dynamic_state3 lavapipe'i, RADV ja ANV jaoks.
    • VK_EXT_extended_dynamic_state2 RADV jaoks.
    • VK_EXT_pipeline_robustness v3dv jaoks.
    • VK_EXT_mesh_shader ANV jaoks.

Allikas: opennet.ru

Lisa kommentaar