Etter fire måneder med utvikling ble utgivelsen av en gratis implementering av OpenGL og Vulkan APIer - Mesa 22.2.0 - publisert. Den første utgivelsen av Mesa 22.2.0-grenen har en eksperimentell status - etter den endelige stabiliseringen av koden vil en stabil versjon 22.2.1 bli utgitt.
I Mesa 22.2 er støtte for Vulkan 1.3 grafikk-API tilgjengelig i anv-driverne for Intel GPUer, radv for AMD GPUer og tu for Qualcomm GPUer. Vulkan 1.2-støtte er implementert i emulatormodus (vn), Vulkan 1.1 i lavapipe-programvaren rasterizer (lvp), og Vulkan 1.0 i v3dv-driveren (Broadcom VideoCore VI GPU fra Raspberry Pi 4). Mesa gir også full OpenGL 4.6-støtte for 965, iris (Intel), radeonsi (AMD), zink og llvmpipe-drivere. OpenGL 4.5-støtte er tilgjengelig for AMD (r600) og NVIDIA (nvc0) GPUer, og OpenGL 4.3-støtte for virgl (Virgil3D virtuell GPU for QEMU/KVM) og vmwgfx (VMware).
Hovedinnovasjoner:
- Qualcomm GPU-driveren (tu) gir støtte for Vulkan 1.3 grafikk-API.
- Panfrost-driveren har lagt til støtte for Mali GPUer basert på Valhall-mikroarkitekturen (Mali-G57). Driveren er kompatibel med OpenGL ES 3.1-spesifikasjonen.
- Implementeringen av Vulkan-driveren for GPUer basert på PowerVR Rogue-arkitekturen, utviklet av Imagination, har fortsatt.
- ANV Vulkan-driveren (Intel) og Iris OpenGL-driveren har forbedret støtte for Intel DG2-G12 (Arc Alchemist) diskrete grafikkort. Vulkan-driveren har betydelig (omtrent 100 ganger) økt ytelsen til strålesporingskoden.
- R600g-driveren for AMD GPUer i Radeon HD 2000 til HD 6000-serien har blitt konvertert til å bruke en typeløs mellomrepresentasjon (IR) av NIR shaders. NIR-støtte lar deg også få støtte for TGSI (Tungsten Graphics Shader Infrastructure) mellomrepresentasjon gjennom bruk av et lag for å oversette NIR til TGSI.
- Arbeidet har begynt i Nouveau OpenGL-driveren for å implementere støtte for RTX 30 "Ampere" GPU.
- Etnaviv-driveren for Vivante-kort støtter nå asynkron shader-kompilering.
- Lagt til støtte for Vulkan-utvidelser:
- VK_EXT_robustness2 for lavapipedriveren.
- VK_EXT_image_2d_view_of_3d for RADV.
- VK_EXT_primitives_generated_query for RADV.
- VK_EXT_non_seamless_cube_map for RADV, ANV, lavapipe.
- VK_EXT_border_color_swizzle for lavapipe, ANV, turnip, RADV.
- VK_EXT_shader_module_identifier for RADV.
- VK_EXT_multisampled_render_to_single_sampled for lavapipe.
- VK_EXT_shader_subgroup_vote for lavapipe.
- VK_EXT_shader_subgroup_avstemning for lavapipe
- VK_EXT_attachment_feedback_loop_layout for RADV.
- Lagt til støtte for OpenGL-utvidelser:
- WGL_ARB_create_context_robustness.
- ARB_robust_buffer_access_behavior for d3d12.
- EGL_KHR_context_flush_control.
- GLX_ARB_context_flush_control
- GL_EXT_memory_object_win32 for zink og d3d12.
- GL_EXT_semaphore_win32 for zink og d3d12.
Kilde: opennet.ru