Lansarea Mesa 22.0, o implementare gratuită a OpenGL și Vulkan

După patru luni de dezvoltare, a fost publicată lansarea unei implementări gratuite a API-urilor OpenGL și Vulkan - Mesa 22.0.0. Prima lansare a ramului Mesa 22.0.0 are un statut experimental - după stabilizarea finală a codului, va fi lansată o versiune stabilă 22.0.1. Noua versiune se remarcă prin implementarea API-ului grafic Vulkan 1.3 în driverul anv pentru GPU-urile Intel și radv pentru GPU-urile AMD.

Suportul Vulkan 1.2 este disponibil în modul emulator (vn), suportul Vulkan 1.1 este disponibil pentru GPU-urile Qualcomm (tu) și rasterizatorul software lavapipe, iar suportul Vulkan 1.0 este disponibil pentru GPU-urile Broadcom VideoCore VI (Raspberry Pi 4). Mesa 22.0 oferă, de asemenea, suport complet OpenGL 4.6 pentru driverele 965, iris (Intel), radeonsi (AMD), zink și llvmpipe. Suportul OpenGL 4.5 este disponibil pentru GPU-urile AMD (r600) și NVIDIA (nvc0), iar suportul OpenGL 4.3 pentru virgl (GPU virtual Virgil3D pentru QEMU/KVM) și vmwgfx (VMware).

Principalele inovații:

  • S-a adăugat suport pentru API-ul grafic Vulkan 1.3.
  • Codul pentru driverele OpenGL clasice care nu folosesc interfața Gallium3D a fost mutat din Mesa principală într-o ramură separată „Amber”, inclusiv driverele i915 și i965 pentru GPU-urile Intel, r100 și r200 pentru GPU-urile AMD și Nouveau pentru GPU-urile NVIDIA. Driverul SWR, care oferea un rasterizare software OpenGL bazat pe proiectul Intel OpenSWR, a fost, de asemenea, mutat în ramura „Amber”. Biblioteca clasică xlib este exclusă din structura principală, în locul căreia se recomandă utilizarea variantei galium-xlib.
  • Driverul Gallium D3D12 cu un strat pentru organizarea lucrărilor OpenGL pe deasupra DirectX 12 API (D3D12) asigură compatibilitatea cu OpenGL ES 3.1. Driverul este utilizat în stratul WSL2 pentru a rula aplicații grafice Linux pe Windows.
  • Suport pentru cipurile Intel Alderlake (S și N) a fost adăugat la driverul OpenGL „iris” și la driverul Vulkan „ANV”.
  • Driverele GPU Intel includ suport pentru tehnologia Adaptive-Sync (VRR) în mod implicit, permițându-vă să modificați în mod adaptiv rata de reîmprospătare a monitorului pentru un afișaj neted și fără rupere.
  • Driverul RADV Vulkan (AMD) continuă să implementeze suport pentru ray tracing și shadere pentru ray tracing.
  • Driverul v3dv, dezvoltat pentru acceleratorul grafic VideoCore VI, folosit începând cu modelul Raspberry Pi 4, oferă posibilitatea de a lucra pe platforma Android.
  • Pentru EGL, este implementat un mecanism „dma-buf feedback”, care oferă informații suplimentare despre GPU-urile disponibile și face posibilă creșterea eficienței schimbului de date între GPU-ul principal și secundar, de exemplu, pentru a organiza ieșirea fără tamponare intermediară.
  • Suportul OpenGL 3 a fost adăugat la driverul vmwgfx, folosit pentru a implementa accelerarea 4.3D în mediile VMware.
  • Suport pentru extensii a fost adăugat la driverele Vulkan RADV (AMD), ANV (Intel) și zink (OpenGL peste Vulkan):
    • VK_KHR_dynamic_rendering (lavapipe,radv,anv)
    • VK_EXT_image_view_min_lod (radv) KHR_synchronization2.txt VK_KHR_synchronization2]] (radv)
    • VK_EXT_memory_object (zink)
    • VK_EXT_memory_object_fd (zink)
    • VK_EXT_semafor (zink)
    • VK_EXT_semaphore_fd (zink)
    • VK_VALVE_tip_descriptor_mutable (zink)
  • S-au adăugat noi extensii OpenGL:
    • GL_ARB_sparse_texture (radeonsi, zink)
    • GL_ARB_sparse_texture2 (radeonsi, zink)
    • GL_ARB_sparse_texture_clamp (radeonsi, zink)
    • GL_ARB_framebuffer_no_attachments
    • GL_ARB_sample_shading

    Sursa: opennet.ru

Adauga un comentariu