Release av Mesa 22.1, en gratis implementering av OpenGL och Vulkan

Efter två månaders utveckling publicerades släppet av en gratis implementering av OpenGL och Vulkan API - Mesa 22.1.0. Den första utgåvan av Mesa 22.1.0-grenen har en experimentell status - efter den slutliga stabiliseringen av koden kommer en stabil version 22.1.1 att släppas.

I Mesa 22.1 finns stöd för Vulkan 1.3 grafik-API tillgängligt i anv-drivrutinerna för Intel GPU:er, radv för AMD GPU:er och lavapipe-programvaran rasterizer. Stöd för Vulkan 1.2 är implementerat i emulatorläge (vn), Vulkan 1.1 är implementerat i drivrutinen för Qualcomm GPU:er (tu). och Vulkan 1.0 i drivrutinen för Broadcom VideoCore VI GPU (Raspberry Pi 4). Mesa tillhandahåller även fullt OpenGL 4.6-stöd för drivrutiner för 965, iris (Intel), radeonsi (AMD), zink och llvmpipe. OpenGL 4.5-stöd är tillgängligt för AMD (r600) och NVIDIA (nvc0) GPU:er, och OpenGL 4.3-stöd för virgl (Virgil3D virtuell GPU för QEMU/KVM) och vmwgfx (VMware).

Huvudsakliga innovationer:

  • ANV Vulkan-drivrutinen (Intel) och Iris OpenGL-drivrutinen stöder Intel DG2 (Arc Alchemist) och Arctic Sound-M diskreta grafikkort.
  • D3D12-drivrutinen med ett lager för att organisera OpenGL-arbetet ovanpå DirectX 12 API (D3D12) säkerställer kompatibilitet med OpenGL 4.2. Drivrutinen används i WSL2-lagret för att köra Linux-grafiska applikationer på Windows.
  • Lavapipe-drivrutinen, som implementerar en mjukvaru-rasterizer för Vulkan API (liknande llvmpipe, men för Vulkan, översättning av Vulkan API-anrop till Gallium API), stöder Vulkan 1.3.
  • Lagt till stöd för AMD GFX1036 och GFX1037 GPU:er.
  • RADV-drivrutinen (AMD) har implementerat ray primitive culling, vilket förbättrar stödet för ray tracing för spel som DOOM Eternal.
  • En första implementering av Vulkan-drivrutinen för GPU:er baserad på PowerVR Rogue-arkitekturen utvecklad av Imagination har föreslagits.
  • Nouveau-drivrutinen för äldre GeForce 6/7/8 GPU:er har konverterats för att använda en typlös mellanrepresentation (IR) av NIR-shaders. NIR-stöd låter dig också få stöd för TGSI (Tungsten Graphics Shader Infrastructure) mellanrepresentation genom att använda ett lager för att översätta NIR till TGSI.
  • Kompositionen inkluderar en kompakt OpenCL-kompilator, föreslagen av Intel och används för strålspårning.
  • OpenGL-drivrutinen v3d, utvecklad för VideoCore VI-grafikacceleratorn, som används från och med Raspberry Pi 4-modellen, implementerar stöd för cachning av shaders på disk.
  • För AMD GPU:er utrustade med videoprocessormotorn VCN 2.0 har EFC (Encoder Format Conversion)-stöd implementerats, vilket gör det möjligt att använda en hårdvaruvideokodare för att direkt läsa RGB-ytor utan RGB->YUV-konverteringar utförda av shaders.
  • Crocus-drivrutinen, utvecklad för äldre Intel GPU:er baserad på Gen4-Gen7 mikroarkitekturer som inte stöds av Iris-drivrutinen, inkluderar en kompatibilitetsprofil med äldre versioner av OpenGL.
  • PanVk-drivrutinen, som ger stöd för Vulkans grafik-API för ARM Mali Midgard och Bifrost GPU:er, har påbörjat arbetet med att stödja datorskuggningar.
  • Venus-drivrutinen med implementering av en virtuell GPU (virtio-gpu) baserad på Vulkan API har lagt till stöd för ANGLE-lagret, som ansvarar för att översätta OpenGL ES-anrop till OpenGL, Direct3D 9/11, Desktop GL och Vulkan.
  • Lagt till stöd för NVIDIAs OpenGL-tillägg GL_NV_pack_subimage, designat för att uppdatera rektanglar i värdminnet med hjälp av data från framebuffern eller texturen.
  • Stöd för tillägg har lagts till i Vulkan-drivrutinerna RADV (AMD), ANV (Intel) och lavapipe:
    • VK_EXT_depth_clip_control för lavapipe och RADV.
    • VK_EXT_graphics_pipeline_library för lavapipe.
    • VK_EXT_primitives_generated_query för lavapipe.
    • VK_EXT_image_2d_view_of_3d för ANV och lavapipe.
    • VK_KHR_swapchain_mutable_format för lavapipe.

Källa: opennet.ru

Lägg en kommentar