Izdaja Mesa 21.0, brezplačne izvedbe OpenGL in Vulkan

Predstavljena je izdaja brezplačne implementacije API-jev OpenGL in Vulkan - Mesa 21.0.0. Prva izdaja veje Mesa 21.0.0 ima eksperimentalni status - po končni stabilizaciji kode bo izdana stabilna različica 21.0.1. Mesa 21.0 ima polno podporo za OpenGL 4.6 za gonilnike 965, iris (Intel), radeonsi (AMD), zink in llvmpipe. Podpora za OpenGL 4.5 je na voljo za grafične procesorje AMD (r600) in NVIDIA (nvc0) ter OpenGL 4.3 za virgl (navidezni grafični procesor Virgil3D za QEMU/KVM). Vulkan 1.2 je podprt za kartice Intel in AMD, Vulkan 1.0 pa za VideoCore VI (Raspberry Pi 4).

Glavne novosti:

  • Gonilnik Zink (izvedba API-ja OpenGL na vrhu Vulkana) nudi podporo za OpenGL 4.6. Zink vam omogoča strojno pospešen OpenGL, če imate v sistemu gonilnike, ki podpirajo samo Vulkan API. Zmogljivost Zinka je blizu zmogljivosti izvornih izvedb OpenGL.
  • Gonilnik llvmpipe, zasnovan za programsko upodabljanje, podpira OpenGL 4.6.
  • Gonilnik Freedreno, ki se uporablja za grafični podsistem Qualcomm, podpira OpenGL ES 6 za Adreno a3.0xx GPE.
  • Gonilnik Panfrost za GPU Midgard (Mali-T7xx, Mali-T8xx) in Bifrost (Mali G3x, G5x, G7x) podpira OpenGL 3.1, kot tudi podporo za OpenGL ES 3.0 za GPU Bifrost.
  • Gonilnik radeonsi podpira razširitvi OpenGL GL_EXT_demote_to_helper_invocation in GL_NV_compute_shader_derivatives. Za igro "Counter-Strike: Global Offensive" je privzeto omogočen način optimizacije "mesa_glthread", ki omogoča povečanje zmogljivosti za 10-20%. Implementirane optimizacije, ki vplivajo na uspešnost testov SPECViewPerf. Dodana podpora za orodje za profiliranje Radeon GPU Profiler (RGP). Dodana podpora za tehnologijo Smart Access Memory za GPU Zen 3 in RDNA 2. Dodana podpora za kodirnike HEVC SAO (Sample Adaptive Offset, za grafične procesorje, ki podpirajo motorje VCN2, VCN2.5 in VCN3) in dekoderje AV1 (za RDNA 2/RX 6000 in samo prek vmesnika OpenMAX).
  • Gonilnik RADV Vulkan (za kartice AMD) dodaja podporo za Rapid packed math (16-bitna vektorizacija) in Sparse memory (omogoča nedosledno postavitev virov, kot so slike in teksture, in njihovo ponovno pripenjanje k različnim dodelitvam pomnilnika). Optimizirano delovanje za kartice serije RX 6000. Dodani razširitvi VK_VALVE_mutable_descriptor_type in VK_KHR_fragment_shading_rate (samo RDNA2).
  • Gonilniki Intel ANV in Iris dodajajo optimizacijo zmogljivosti in ponujajo začetno podporo za razširitve sledenja žarkom Vulkan, implementirane v grafičnih karticah Xe HPG.
  • Dodana podpora za razširitev EGL_MESA_platform_xcb, ki aplikacijam omogoča ustvarjanje virov EGL iz virov X11 brez uporabe Xlib.
  • Gonilnik Vulkan V3DV, razvit za grafični pospeševalnik VideoCore VI, ki se uporablja v ploščah Raspberry Pi 4, ki temeljijo na čipu Broadcom BCM2711, ima dodano podporo za Wayland WSI (Windowing System Integration), ki omogoča dostop do API-ja Vulkan iz okolij, ki temeljijo na Waylandu.
  • Začetna izvedba sloja, ki prevaja klice OpenGL v API DirectX 12, je bila sprejeta za organizacijo dela grafičnih aplikacij v okolju WSL (Windows Subsystem for Linux). Poleg tega je vključena knjižnica spirv_to_dxil za pretvorbo vmesne predstavitve senčil SPIR-V v DXIL (DirectX Intermediate Language), ki jo je razvil Microsoft.
  • Preoblikovana in bistveno izboljšana podpora za Haiku OS.
  • Odstranjene nastavitve glx_disable_oml_sync_control, glx_disable_sgi_video_sync in glx_disable_ext_buffer_age iz driconf.
  • Odstranjena podpora za DRI1 in ustavljeno nalaganje gonilnikov DRI iz različice Mesa pod 8.0.
  • Odstranjen gonilnik swrast, zgrajen na osnovi klasičnega vmesnika DRI in namenjen programskemu upodabljanju OpenGL (preostala gonilnika programskega upodabljanja llvmpipe in softpipe sta glede zmogljivosti in funkcionalnosti opazno pred swrastom). Odstranitev swrast je olajšala prisotnost številnih nerešenih težav in pojav regresij, kljub dejstvu, da se ta gonilnik ne uporablja več v distribucijah.
  • Stara klasična različica API-ja OSMesa je bila odstranjena (ostala je OSMesa na osnovi Galliuma), ki omogoča upodabljanje ne na zaslon, temveč v medpomnilnik v pomnilniku.

    Vir: opennet.ru

Dodaj komentar