Utgivelse av Mesa 21.0, en gratis implementering av OpenGL og Vulkan

Utgivelsen av den gratis implementeringen av OpenGL og Vulkan APIer - Mesa 21.0.0 presenteres. Den første utgivelsen av Mesa 21.0.0-grenen har en eksperimentell status - etter den endelige stabiliseringen av koden vil en stabil versjon 21.0.1 bli utgitt. Mesa 21.0 har full OpenGL 4.6-støtte for 965, iris (Intel), radeonsi (AMD), zink og llvmpipe-drivere. OpenGL 4.5-støtte er tilgjengelig for AMD (r600) og NVIDIA (nvc0) GPUer, og OpenGL 4.3 for virgl (Virgil3D virtuell GPU for QEMU/KVM). Vulkan 1.2 støttes for Intel- og AMD-kort, og Vulkan 1.0 for VideoCore VI (Raspberry Pi 4).

Hovedinnovasjoner:

  • Zink-driveren (en implementering av OpenGL API på toppen av Vulkan) gir støtte for OpenGL 4.6. Zink lar deg få maskinvareakselerert OpenGL hvis du har drivere i systemet ditt som er begrenset til kun å støtte Vulkan API. Ytelsen til Zink er nær ytelsen til native OpenGL-implementeringer.
  • llvmpipe-driveren, designet for programvaregjengivelse, støtter OpenGL 4.6.
  • Freedreno-driveren, brukt for Qualcomm-grafikkundersystemet, støtter OpenGL ES 6 for Adreno a3.0xx GPU.
  • Panfrost-driveren for GPU Midgard (Mali-T7xx, Mali-T8xx) og Bifrost (Mali G3x, G5x, G7x) støtter OpenGL 3.1, samt støtte for OpenGL ES 3.0 for GPU Bifrost.
  • Radeonsi-driveren støtter OpenGL-utvidelsene GL_EXT_demote_to_helper_invocation og GL_NV_compute_shader_derivatives. For spillet "Counter-Strike: Global Offensive" er optimaliseringsmodusen "mesa_glthread" aktivert som standard, noe som gjør det mulig å øke ytelsen med 10-20%. Implementerte optimaliseringer som påvirker bestått SPECViewPerf-tester. Lagt til støtte for profileringsverktøyet Radeon GPU Profiler (RGP). Lagt til støtte for Smart Access Memory-teknologi for Zen 3 og RDNA 2 GPUer. Lagt til støtte for HEVC SAO-kodere (Sample Adaptive Offset, for GPU-er som støtter VCN2-, VCN2.5- og VCN3-motorer) og AV1-dekodere (for RDNA 2/RX 6000 og kun gjennom OpenMAX-grensesnittet).
  • RADV Vulkan-driver (for AMD-kort) legger til støtte for hurtigpakket matematikk (16-bit vektorisering) og sparsomt minne (lar deg legge ut ressurser som bilder og teksturer inkonsekvent og koble dem til forskjellige minneallokeringer på nytt). Optimalisert ytelse for kort i RX 6000-serien. Lagt til utvidelser for VK_VALVE_mutable_descriptor_type og VK_KHR_fragment_shading_rate (kun RDNA2).
  • Intel ANV- og Iris-drivere legger til ytelsesoptimaliseringer og tilbyr innledende støtte for Vulkan ray tracing-utvidelser implementert i Xe HPG-grafikkort.
  • Lagt til støtte for EGL_MESA_platform_xcb-utvidelsen, som lar applikasjoner lage EGL-ressurser fra X11-ressurser uten å bruke Xlib.
  • Vulkan-driveren V3DV, utviklet for VideoCore VI-grafikkakseleratoren brukt i Raspberry Pi 4-kort basert på Broadcom BCM2711-brikken, har lagt til støtte for Wayland WSI (Windowing System Integration), som gir tilgang til Vulkan API fra Wayland-baserte miljøer.
  • Den første implementeringen av laget som oversetter OpenGL-kall til DirectX 12 API ble tatt i bruk for å organisere arbeidet med grafiske applikasjoner i WSL-miljøet (Windows Subsystem for Linux). I tillegg er spirv_to_dxil-biblioteket for å konvertere mellomrepresentasjonen av SPIR-V shaders til DXIL (DirectX Intermediate Language) utviklet av Microsoft inkludert.
  • Redesignet og betydelig forbedret støtte for Haiku OS.
  • Fjernet glx_disable_oml_sync_control, glx_disable_sgi_video_sync og glx_disable_ext_buffer_age innstillinger fra driconf.
  • Fjernet støtte for DRI1 og sluttet å laste DRI-drivere fra versjoner av Mesa under 8.0.
  • Fjernet swrast-driveren, bygget på basis av det klassiske DRI-grensesnittet og beregnet for OpenGL-programvaregjengivelse (de gjenværende programvaregjengivelsesdriverne llvmpipe og softpipe er merkbart foran swrast når det gjelder ytelse og funksjonalitet). Fjerningen av swrast ble forenklet av tilstedeværelsen av mange uløste problemer og forekomsten av regresjoner, til tross for at denne driveren ikke lenger brukes i distribusjoner.
  • Den gamle klassiske versjonen av OSMesa API er fjernet (Gallium-basert OSMesa er igjen), som tillater gjengivelse ikke til skjermen, men til en buffer i minnet.

    Kilde: opennet.ru

Legg til en kommentar