Vrystelling van Mesa 22.3, 'n gratis implementering van OpenGL en Vulkan

Die vrystelling van die gratis implementering van die OpenGL en Vulkan API's - Mesa 22.3.0 is gepubliseer. Die eerste vrystelling van die Mesa 22.3.0-tak het 'n eksperimentele status - na die finale stabilisering van die kode, sal 'n stabiele weergawe 22.3.1 vrygestel word.

In Mesa 22.3 is ondersteuning vir die Vulkan 1.3 grafiese API beskikbaar in anv vir Intel GPU's, radv vir AMD GPU's, tu vir Qualcomm GPU's, en in emulatormodus (vn). Ondersteuning vir Vulkan 1.1 word geïmplementeer in die lavapipe (lvp) sagteware rasterizer, en Vulkan 1.0 in die v3dv bestuurder (GPU Broadcom VideoCore VI van Raspberry Pi 4).

Mesa bied ook volledige OpenGL 4.6-ondersteuning vir die 965, iris (Intel), radeonsi (AMD), sink, en llvmpipe drywers. OpenGL 4.5-ondersteuning is beskikbaar vir AMD (r600), NVIDIA (nvc0) en Qualcomm Adreno (freedreno) GPU's, OpenGL 4.3 vir virgl (Virgil3D virtuele GPU vir QEMU/KVM), en OpenGL 4.2 vir d3d12-bestuurder (laag om OpenGL oor DirectX te laat loop) 12).

Belangrikste innovasies:

  • Die freedreno-bestuurder vir Qualcomm Adreno GPU's bied ondersteuning vir die OpenGL 4.5 grafiese API, en die emulatorbestuurder (vn) ondersteun die Vulkan 1.3 API.
  • Die Panfrost-bestuurder implementeer die vermoë om shaders op skyf te kas en voeg ondersteuning vir die Mali T620 GPU by. Die drywer is versoenbaar met die OpenGL 3.1-spesifikasie en OpenGL ES 3.1.
  • Die RADV (AMD) Vulkan-bestuurder het ondersteuning bygevoeg vir GFX11/RDNA3 GPU's (Radeon RX 7000-reeks). Die kode vir straalopsporing is geoptimaliseer. Bygevoeg ondersteuning vir R8G8B8, B8G8R8 en R16G16B16 pixel formate, sowel as 64-bis hoekpunt buffer formate. Bygevoeg ondersteuning vir die extendedDynamicState2PatchControlPoints vlag, wat ondersteuning vir die VK_EXT_extended_dynamic_state2 uitbreiding bepaal. Radeon Raytracing Analyzer geïntegreer.
  • Die pakket bevat die Rusticle-bestuurder met die implementering van die OpenCL 3.0-spesifikasie, wat die API en uitbreidings van die C-taal definieer vir die organisering van kruisplatform-parallelle rekenaars. Die drywer is in Rust geskryf, ontwikkel met behulp van die Gallium-koppelvlak wat in Mesa verskaf word en dien as 'n analoog van die Clover OpenCL-frontend wat in Mesa teenwoordig is. Clover is lankal verlate en rusticl word as sy toekomstige plaasvervanger geposisioneer. Ondersteuning vir Rust en rusticl is by verstek gedeaktiveer en vereis 'n bou met eksplisiete opsies "-D gallium-rusticl=true -Dllvm=enabled -Drust_std=2021". By die bou word die rustc samesteller, bindgen binding generator, LLVM, SPIRV-Tools en SPIRV-LLVM-Translator as bykomende afhanklikhede vereis.
  • Die RadeonSI-bestuurder sluit by verstek ondersteuning vir multi-threaded-weergawe via OpenGL in.
  • Mesa-DB, 'n nuwe soort skadu-kas wat data in 'n enkele lêer stoor, bekendgestel.
  • Bygevoeg ondersteuning vir OpenGL uitbreidings:
    • GL_ARB_shader_clock vir llvmpipe.
    • GL_KHR_blend_equation_advanced_coherent vir sink.
    • GL_NV_shader_atomic_float vir llvmpyp.
  • Bygevoeg ondersteuning vir Vulkan uitbreidings:
    • VK_KHR_shader_clock vir lawapipe.
    • VK_EXT_attachment_feedback_loop_layout vir RADV, lavapipe.
    • VK_KHR_global_priority vir RADV.
    • VK_EXT_load_store_op_none vir RADV.
    • VK_EXT_mutable_descriptor_type vir RADV.
    • VK_EXT_shader_atomic_float vir lvp.
    • VK_EXT_shader_atomic_float2 vir lvp.
    • VK_EXT_image_robustness vir v3dv.
    • VK_EXT_extended_dynamic_state3 vir lavapipe, RADV en ANV.
    • VK_EXT_extended_dynamic_state2 vir RADV.
    • VK_EXT_pipeline_robustness vir v3dv.
    • VK_EXT_mesh_shader vir ANV.

Bron: opennet.ru

Voeg 'n opmerking