Рэліз Mesa 22.1, свабоднай рэалізацыі OpenGL і Vulkan

Пасля двух месяцаў распрацоўкі апублікаваны рэліз свабоднай рэалізацыі API OpenGL і Vulkan - Mesa 22.1.0. Першы выпуск галінкі Mesa 22.1.0 мае эксперыментальны статус - пасля правядзення канчатковай стабілізацыі кода будзе выпушчана стабільная версія 22.1.1.

У Mesa 22.1 даступная падтрымка графічнага API Vulkan 1.3 у драйверах anv для GPU Intel, radv для GPU AMD і праграмным растэрызатары lavapipe. Падтрымка Vulkan 1.2 рэалізавана ў рэжыме эмулятара (vn), Vulkan 1.1 – у драйверы для GPU Qualcomm (tu). а Vulkan 1.0 у драйверы для GPU Broadcom VideoCore VI (Raspberry Pi 4). У Mesa таксама забяспечваецца поўная падтрымка OpenGL 4.6 для драйвераў 965, iris (Intel), radeonsi (AMD), zink і llvmpipe. Падтрымка OpenGL 4.5 даступная для GPU AMD (r600) і NVIDIA (nvc0), а OpenGL 4.3 для virgl (віртуальны GPU Virgil3D для QEMU/KVM) і vmwgfx (VMware).

Асноўныя навіны:

  • У Vulkan-драйверы ANV (Intel) і OpenGL-драйверы Iris рэалізавана падтрымка дыскрэтных відэакартай Intel DG2 (Arc Alchemist) і Arctic Sound-M.
  • У драйверы D3D12 з праслойкай для арганізацыі працы OpenGL па-над API DirectX 12 (D3D12) забяспечана сумяшчальнасць з OpenGL 4.2. Драйвер ужываецца ў праслойцы WSL2 для запуску графічных прыкладанняў Linux у Windows.
  • У драйверы lavapipe з рэалізацыяй праграмнага растэрызатара для API Vulkan (аналаг llvmpipe, але для Vulkan, які выконвае трансляцыю выклікаў API Vulkan у API Gallium) рэалізавана падтрымка Vulkan 1.3.
  • Дададзена падтрымка GPU AMD GFX1036 і GFX1037.
  • У драйверы RADV (AMD) рэалізавана магчымасць адсявання прымітываў пры трасіроўцы прамянёў (ray primitive culling), што палепшыла падтрымку трасіроўкі прамянёў для гульняў, такіх як DOOM Eternal.
  • Прапанавана пачатковая рэалізацыя драйвера Vulkan для GPU на базе архітэктуры PowerVR Rogue, якая развіваецца кампаніяй Imagination.
  • Драйвер Nouveau для старых GPU GeForce 6/7/8 пераведзены на выкарыстанне бестыпавага прамежкавага прадстаўленне (IR) шэйдараў NIR. Падтрымка NIR таксама дазваляе атрымаць падтрымку прамежкавага падання TGSI (Tungsten Graphics Shader Infrastructure) праз задзейнічанне пласта для трансляцыі NIR у TGSI.
  • У склад уключаны кампактны кампілятар OpenCL, прапанаваны кампаніяй Intel і які выкарыстоўваецца пры трасіроўцы прамянёў.
  • У OpenGL-драйверы v3d, які развіваецца для графічнага паскаральніка VideoCore VI, ужывальнага пачынальна з мадэлі Raspberry Pi 4, рэалізаваная падтрымка кэшавання шэйдараў на дыску.
  • Для GPU AMD, абсталяваным рухавіком апрацоўкі відэа VCN 2.0, рэалізаваная падтрымка EFC (Encoder Format Conversion), якая дазваляе выкарыстоўваць апаратны кадавальнік відэа для прамога чытання RGB-паверхняў без пераўтварэнняў RGB-> YUV, выкананых шэйдарамі.
  • У драйверы Crocus, які развіваецца для старых GPU Intel на базе мікраархітэктур Gen4-Gen7, не падтрымоўваных драйверам Iris, уключаны профіль сумяшчальнасці са старымі версіямі OpenGL.
  • У драйверы PanVk, які прадстаўляе падтрымку графічнага API Vulkan для GPU ARM Mali Midgard і Bifrost, пачалася праца па падтрымцы вылічальных шэйдараў.
  • У драйвер Venus з рэалізацыяй віртуальнага GPU (virtio-gpu) на базе API Vulkan дададзена падтрымка праслойкі ANGLE, якая адказвае за трансляцыю выклікаў OpenGL ES у OpenGL, Direct3D 9/11, Desktop GL і Vulkan.
  • Дададзена падтрымка прапанаванага кампаніяй NVIDIA OpenGL-пашырэння GL_NV_pack_subimage, прызначанага для абнаўлення прастакутнікаў у памяці хаста з выкарыстаннем дадзеных з фрэймбуфера ці тэкстуры.
  • У Vulkan-драйверы RADV (AMD), ANV (Intel) і lavapipe дададзена падтрымка пашырэнняў:
    • VK_EXT_depth_clip_control для lavapipe і RADV.
    • VK_EXT_graphics_pipeline_library для lavapipe.
    • VK_EXT_primitives_generated_query для lavapipe.
    • VK_EXT_image_2d_view_of_3d для ANV і lavapipe.
    • VK_KHR_swapchain_mutable_format для lavapipe.

Крыніца: opennet.ru

Дадаць каментар