Izdanje Mesa 21.3, besplatna implementacija OpenGL-a i Vulkana

Nakon četiri mjeseca razvoja, objavljeno je izdanje besplatne implementacije OpenGL i Vulkan API-ja - Mesa 21.3.0. Prvo izdanje grane Mesa 21.3.0 ima eksperimentalni status - nakon konačne stabilizacije koda, bit će objavljena stabilna verzija 21.3.1.

Mesa 21.3 uključuje punu podršku za OpenGL 4.6 za 965, iris (Intel), radeonsi (AMD), zink i llvmpipe drajvere. Podrška za OpenGL 4.5 je dostupna za AMD (r600) i NVIDIA (nvc0) GPU, a podrška za OpenGL 4.3 za virgl (Virgil3D virtuelni GPU za QEMU/KVM). Podrška za Vulkan 1.2 je dostupna za Intel i AMD kartice, kao i u režimu emulatora (vn) i u softverskom rasterizatoru lavapipe, podrška za Vulkan 1.1 je dostupna za Qualcomm GPU i softverski rasterizator lavapipe, a Vulkan 1.0 je dostupan za Broadcom VideoCore VI GPU (Raspberry Pi 4).

Glavne inovacije:

  • Zink drajver (implementacija OpenGL API-ja na vrhu Vulkana, koji vam omogućava da dobijete hardverski ubrzan OpenGL ako sistem ima drajvere ograničene na podršku samo Vulkan API-ja) podržava OpenGL ES 3.2.
  • Panfrost drajver, dizajniran za rad sa GPU-ovima zasnovanim na Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx) i Bifrost (Mali G3x, G5x, G7x) mikroarhitekturama, zvanično je sertifikovan za kompatibilnost sa OpenGL ES 3.1.
  • V3dv drajver, razvijen za VideoCore VI grafički akcelerator, koji se koristi počevši od Raspberry Pi 4 modela, ima sertifikovanu podršku za Vulkan 1.1 grafički API, a takođe je dodata podrška za geometrijske shadere. Performanse koda generiranog kompajlerom shadera su značajno poboljšane, što pozitivno utiče na brzinu programa koji aktivno koriste shadere, kao što su igre zasnovane na Unreal Engineu 4.
  • RADV Vulkan drajver (AMD) je dodao eksperimentalnu podršku za praćenje zraka i shadere za praćenje zraka. Za GFX10.3 kartice, podrška za primitivno izbacivanje pomoću NGG (Next-Gen Geometry) shader motora je omogućena po defaultu.
  • Iris OpenGL drajver (novi drajver za Intel GPU) je dodao mogućnost kompilacije višenitnih shadera.
  • Lavapipe drajver, koji implementira softverski rasterizator za Vulkan API (slično llvmpipeu, ali za Vulkan, koji prevodi Vulkan API pozive u Gallium API) implementirao je podršku za filtriranje anizotropnih tekstura i dodao podršku za Vulkan 1.2.
  • OpenGL drajver llvmpipe, dizajniran za softversko prikazivanje, povećao je performanse za 2-3 puta pri izvođenju radnji koje se odnose na 2D operacije. Dodata podrška za FP16 operacije, anizotropno filtriranje teksture (GL_ARB_texture_filter_anisotropic) i zakačena memorijska područja (GL_AMD_pinned_memory). Obezbeđena je podrška za OpenGL 4.5 profil kompatibilnosti.
  • Praćenje stanja VA-API (Video Acceleration API) pruža podršku za ubrzanje AV1 video kodiranja i dekodiranja kada se koriste AMD GPU drajveri.
  • EGL podrška je implementirana za Windows platformu.
  • Dodata podrška za EGL_EXT_present_opaque ekstenziju za Wayland. Problemi sa prikazivanjem transparentnosti u igrama koje se pokreću u okruženjima baziranim na Wayland protokolu su riješeni.
  • Podrška za ekstenzije je dodata Vulkan drajverima RADV (AMD), ANV (Intel) i lavapipe:
    • 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_sinhronizacija2 (Intel).
    • VK_KHR_održavanje4 (RADV).
    • VK_KHR_format_feature_flags2 (RADV).
    • VK_KHR_shader_subgroup_extended_types (lavapipe).
    • VK_KHR_spirv_1_4 (cijev za ispiranje).
    • VK_KHR_vremenska_semafora (voda za pranje).
    • VK_EXT_external_memory_host (lavapipe).
    • VK_KHR_depth_stencil_resolve (lavapipe).
    • VK_KHR_shader_float16_int8 (washpipe).
    • VK_EXT_color_write_enable(voda za pranje).

izvor: opennet.ru

Dodajte komentar