Udgivelse af Mesa 21.0, en gratis implementering af OpenGL og Vulkan

Udgivelsen af ​​den gratis implementering af OpenGL og Vulkan API'erne - Mesa 21.0.0 præsenteres. Den første udgivelse af Mesa 21.0.0-grenen har en eksperimentel status - efter den endelige stabilisering af koden vil en stabil version 21.0.1 blive frigivet. Mesa 21.0 har fuld OpenGL 4.6-understøttelse til 965, iris (Intel), radeonsi (AMD), zink og llvmpipe-drivere. OpenGL 4.5-understøttelse er tilgængelig for AMD (r600) og NVIDIA (nvc0) GPU'er og OpenGL 4.3 for virgl (Virgil3D virtuel GPU til QEMU/KVM). Vulkan 1.2 understøttes til Intel- og AMD-kort, og Vulkan 1.0 til VideoCore VI (Raspberry Pi 4).

Vigtigste innovationer:

  • Zink-driveren (en implementering af OpenGL API oven på Vulkan) understøtter OpenGL 4.6. Zink giver dig mulighed for at få hardwareaccelereret OpenGL, hvis du har drivere i dit system, der er begrænset til kun at understøtte Vulkan API. Ydeevnen for Zink er tæt på den for native OpenGL-implementeringer.
  • llvmpipe-driveren, designet til softwaregengivelse, understøtter OpenGL 4.6.
  • Freedreno-driveren, der bruges til Qualcomm-grafikundersystemet, understøtter OpenGL ES 6 til Adreno a3.0xx GPU.
  • Panfrost-driveren til GPU Midgard (Mali-T7xx, Mali-T8xx) og Bifrost (Mali G3x, G5x, G7x) understøtter OpenGL 3.1, samt understøttelse af OpenGL ES 3.0 til GPU Bifrost.
  • Radeonsi-driveren understøtter OpenGL-udvidelserne GL_EXT_demote_to_helper_invocation og GL_NV_compute_shader_derivatives. For spillet "Counter-Strike: Global Offensive" er optimeringstilstanden "mesa_glthread" aktiveret som standard, hvilket gør det muligt at øge ydeevnen med 10-20%. Implementerede optimeringer, der påvirker beståelsen af ​​SPECViewPerf-tests. Tilføjet understøttelse af Radeon GPU Profiler (RGP) profileringsværktøj. Tilføjet understøttelse af Smart Access Memory-teknologi til Zen 3 og RDNA 2 GPU'er. Tilføjet understøttelse af HEVC SAO-kodere (Sample Adaptive Offset, for GPU'er, der understøtter VCN2-, VCN2.5- og VCN3-motorer) og AV1-dekodere (for RDNA 2/RX 6000 og kun gennem OpenMAX-grænsefladen).
  • RADV Vulkan-driver (til AMD-kort) tilføjer understøttelse af hurtig pakket matematik (16-bit vektorisering) og sparsom hukommelse (giver dig mulighed for at udlægge ressourcer såsom billeder og teksturer inkonsekvent og genføje dem til forskellige hukommelsestildelinger). Optimeret ydeevne til kort i RX 6000-serien Tilføjet VK_VALVE_mutable_descriptor_type og VK_KHR_fragment_shading_rate extensions (kun RDNA2).
  • Intel ANV- og Iris-drivere tilføjer ydeevneoptimeringer og tilbyder indledende support til Vulkan ray-sporingsudvidelser implementeret i Xe HPG-grafikkort.
  • Tilføjet understøttelse af EGL_MESA_platform_xcb-udvidelsen, som tillader applikationer at oprette EGL-ressourcer fra X11-ressourcer uden at bruge Xlib.
  • Vulkan-driveren V3DV, udviklet til VideoCore VI-grafikacceleratoren brugt i Raspberry Pi 4-kort baseret på Broadcom BCM2711-chippen, har tilføjet understøttelse af Wayland WSI (Windowing System Integration), som giver adgang til Vulkan API fra Wayland-baserede miljøer.
  • Den indledende implementering af laget, der oversætter OpenGL-kald til DirectX 12 API, blev vedtaget for at organisere arbejdet med grafiske applikationer i WSL-miljøet (Windows Subsystem for Linux). Derudover er spirv_to_dxil-biblioteket til konvertering af den mellemliggende repræsentation af SPIR-V shaders til DXIL (DirectX Intermediate Language) udviklet af Microsoft.
  • Omdesignet og væsentligt forbedret understøttelse af Haiku OS.
  • Fjernede glx_disable_oml_sync_control, glx_disable_sgi_video_sync og glx_disable_ext_buffer_age indstillinger fra driconf.
  • Fjernede understøttelse af DRI1 og stoppede med at indlæse DRI-drivere fra versioner af Mesa under 8.0.
  • Fjernede swrast-driveren, bygget på basis af den klassiske DRI-grænseflade og beregnet til OpenGL-software-rendering (de resterende software-rendering-drivere llvmpipe og softpipe er mærkbart foran swrast med hensyn til ydeevne og funktionalitet). Fjernelsen af ​​swrast blev lettet af tilstedeværelsen af ​​mange uløste problemer og forekomsten af ​​regressioner, på trods af at denne driver ikke længere bruges i distributioner.
  • Den gamle klassiske version af OSMesa API er blevet fjernet (Gallium-baseret OSMesa er tilbage), hvilket tillader gengivelse ikke til skærmen, men til en buffer i hukommelsen.

    Kilde: opennet.ru

Tilføj en kommentar