Vydanie Mesa 21.3, bezplatnej implementácie OpenGL a Vulkan

Po štyroch mesiacoch vývoja bolo zverejnené vydanie bezplatnej implementácie API OpenGL a Vulkan – Mesa 21.3.0. Prvé vydanie vetvy Mesa 21.3.0 má experimentálny status – po konečnej stabilizácii kódu vyjde stabilná verzia 21.3.1.

Mesa 21.3 obsahuje plnú podporu pre OpenGL 4.6 pre ovládače 965, iris (Intel), radeonsi (AMD), zink a llvmpipe. Podpora OpenGL 4.5 je dostupná pre GPU AMD (r600) a NVIDIA (nvc0) a podpora OpenGL 4.3 pre virgl (virtuálny GPU Virgil3D pre QEMU/KVM). Podpora Vulkan 1.2 je dostupná pre karty Intel a AMD, ako aj v režime emulátora (vn) a v softvérovom rasterizéri lavapipe, podpora Vulkan 1.1 je k dispozícii pre GPU Qualcomm a softvérový rasterizátor lavapipe a Vulkan 1.0 je k dispozícii pre Broadcom VideoCore VI GPU (Raspberry Pi 4).

Hlavné inovácie:

  • Ovládač Zink (implementácia OpenGL API nad Vulkan, ktorá vám umožňuje získať hardvérovo akcelerované OpenGL, ak má systém ovládače obmedzené na podporu iba Vulkan API) podporuje OpenGL ES 3.2.
  • Ovládač Panfrost, navrhnutý pre prácu s GPU založenými na mikroarchitektúrach Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) a Bifrost (Mali G3x, G5x, G7x), je oficiálne certifikovaný pre kompatibilitu s OpenGL ES 3.1.
  • Ovládač v3dv, vyvinutý pre grafický akcelerátor VideoCore VI, používaný počnúc modelom Raspberry Pi 4, má certifikovanú podporu pre grafické API Vulkan 1.1 a pridal aj podporu pre geometry shadery. Výkon kódu generovaného kompilátorom shaderov sa výrazne zlepšil, čo má pozitívny vplyv na rýchlosť programov, ktoré aktívne využívajú shadery, ako sú hry založené na Unreal Engine 4.
  • Ovládač RADV Vulkan (AMD) pridal experimentálnu podporu pre ray tracing a ray tracing shadery. Pre karty GFX10.3 je štandardne povolená podpora primitívneho vyraďovania pomocou shaderov NGG (Next-Gen Geometry).
  • Ovládač Iris OpenGL (nový ovládač pre GPU Intel) pridal možnosť viacvláknovej kompilácie shaderov.
  • Ovládač lavapipe, ktorý implementuje softvérový rasterizátor pre Vulkan API (podobný ako llvmpipe, ale pre Vulkan, ktorý prekladá volania API Vulkan do Gallium API), implementoval podporu pre anizotropné filtrovanie textúr a pridal podporu pre Vulkan 1.2.
  • Ovládač OpenGL llvmpipe, určený na vykresľovanie softvéru, zvýšil výkon 2-3 krát pri vykonávaní akcií súvisiacich s 2D operáciami. Pridaná podpora pre operácie FP16, anizotropné filtrovanie textúr (GL_ARB_texture_filter_anisotropic) a pripnuté oblasti pamäte (GL_AMD_pinned_memory). Poskytuje sa podpora profilu kompatibility OpenGL 4.5.
  • Sledovač stavu VA-API (Video Acceleration API) poskytuje podporu pre zrýchlenie kódovania a dekódovania videa AV1 pri použití ovládačov AMD GPU.
  • Pre platformu Windows bola implementovaná podpora EGL.
  • Pridaná podpora pre rozšírenie EGL_EXT_present_opaque pre Wayland. Problémy so zobrazovaním priehľadnosti v hrách bežiacich v prostrediach založených na protokole Wayland boli vyriešené.
  • Do ovládačov Vulkan RADV (AMD), ANV (Intel) a lavapipe bola pridaná podpora pre rozšírenia:
    • VK_EXT_shader_atomic_float2 (Intel, RADV).
    • VK_EXT_vertex_input_dynamic_state (RADV).
    • VK_EXT_primitive_topology_list_restart (RADV, lavapipe).
    • VK_KHR_shader_integer_dot_product (RADV).
    • VK_KHR_synchronization2 (Intel).
    • VK_KHR_maintenance4 (RADV).
    • VK_KHR_format_feature_flags2 (RADV).
    • VK_KHR_shader_subgroup_extended_types (lavapipe).
    • VK_KHR_spirv_1_4 (splachovacie potrubie).
    • VK_KHR_timeline_semafor (lavapipe).
    • VK_EXT_external_memory_host (lavapipe).
    • VK_KHR_depth_stencil_resolve (lavapipe).
    • VK_KHR_shader_float16_int8 (umývacie potrubie).
    • VK_EXT_color_write_enable (umývacie potrubie).

Zdroj: opennet.ru

Pridať komentár