Lanzamento de Mesa 21.0, unha implementación gratuíta de OpenGL e Vulkan

Preséntase o lanzamento da implementación gratuíta das API OpenGL e Vulkan - Mesa 21.0.0. A primeira versión da rama Mesa 21.0.0 ten un estado experimental: despois da estabilización final do código, lanzarase unha versión estable 21.0.1. Mesa 21.0 ten compatibilidade completa con OpenGL 4.6 para os controladores 965, iris (Intel), radeonsi (AMD), zink e llvmpipe. O soporte de OpenGL 4.5 está dispoñible para GPU AMD (r600) e NVIDIA (nvc0), e OpenGL 4.3 para virgl (GPU virtual Virgil3D para QEMU/KVM). Vulkan 1.2 é compatible con tarxetas Intel e AMD e Vulkan 1.0 para VideoCore VI (Raspberry Pi 4).

Principais novidades:

  • O controlador Zink (unha implementación da API OpenGL enriba de Vulkan) ofrece soporte para OpenGL 4.6. Zink permíteche obter OpenGL acelerado por hardware se tes controladores no teu sistema que se limitan a admitir só a API Vulkan. O rendemento de Zink é próximo ao das implementacións nativas de OpenGL.
  • O controlador llvmpipe, deseñado para renderizar software, admite OpenGL 4.6.
  • O controlador Freedreno, que se usa para o subsistema gráfico dos chips Qualcomm, admite OpenGL ES 6 para a GPU Adreno a3.0xx.
  • O controlador Panfrost para GPU Midgard (Mali-T7xx, Mali-T8xx) e Bifrost (Mali G3x, G5x, G7x) é compatible con OpenGL 3.1, así como con OpenGL ES 3.0 para GPU Bifrost.
  • O controlador radeonsi admite as extensións OpenGL GL_EXT_demote_to_helper_invocation e GL_NV_compute_shader_derivatives. Para o xogo "Counter-Strike: Global Offensive" o modo de optimización "mesa_glthread" está activado por defecto, o que permite aumentar o rendemento nun 10-20%. Optimizacións implementadas que afectan a superación das probas SPECViewPerf. Engadiuse compatibilidade coa ferramenta de perfís Radeon GPU Profiler (RGP). Engadiuse compatibilidade coa tecnoloxía de memoria de acceso intelixente para as GPU Zen 3 e RDNA 2. Engadido soporte para codificadores HEVC SAO (Sample Adaptive Offset, para GPU compatibles con motores VCN2, VCN2.5 e VCN3) e decodificadores AV1 (para RDNA 2/RX 6000 e só a través da interface OpenMAX).
  • O controlador RADV Vulkan (para tarxetas AMD) engade compatibilidade con Matemáticas rápidas (vectorización de 16 bits) e memoria escasa (permítelle dispor de recursos como imaxes e texturas de forma inconsistente e volver asocialos a diferentes asignacións de memoria). Rendemento optimizado para tarxetas da serie RX 6000. Engadíronse extensións VK_VALVE_mutable_descriptor_type e VK_KHR_fragment_shading_rate (só RDNA2).
  • Os controladores Intel ANV e Iris engaden optimizacións de rendemento e ofrecen soporte inicial para as extensións de trazado de raios Vulkan implementadas nas tarxetas gráficas Xe HPG.
  • Engadiuse compatibilidade coa extensión EGL_MESA_platform_xcb, que permite ás aplicacións crear recursos EGL a partir de recursos X11 sen usar Xlib.
  • O controlador Vulkan V3DV, desenvolvido para o acelerador gráfico VideoCore VI usado en placas Raspberry Pi 4 baseado no chip Broadcom BCM2711, engadiu soporte para Wayland WSI (Windowing System Integration), que permite acceder á API Vulkan desde contornas baseadas en Wayland.
  • A implementación inicial da capa que traduce as chamadas OpenGL á API de DirectX 12 adoptouse para organizar o traballo das aplicacións gráficas no entorno WSL (Windows Subsystem for Linux). Ademais, inclúese a biblioteca spirv_to_dxil para converter a representación intermedia dos sombreadores SPIR-V a DXIL (DirectX Intermediate Language), desenvolvido por Microsoft.
  • Soporte rediseñado e mellorado significativamente para Haiku OS.
  • Quitouse a configuración de glx_disable_oml_sync_control, glx_disable_sgi_video_sync e glx_disable_ext_buffer_age de driconf.
  • Eliminouse a compatibilidade con DRI1 e deixou de cargar controladores DRI das versións de Mesa inferiores á 8.0.
  • Eliminouse o controlador swrast, construído sobre a base da interface DRI clásica e destinado á representación de software OpenGL (os restantes controladores de renderización de software llvmpipe e softpipe están notablemente por diante do swrast en termos de rendemento e funcionalidade). A eliminación de swrast foi facilitada pola presenza de moitos problemas sen resolver e a aparición de regresións, a pesar de que este controlador xa non se utiliza nas distribucións.
  • Eliminouse a versión clásica antiga da API de OSMesa (queda OSMesa baseado en Gallio), o que permite renderizar non á pantalla, senón a un búfer na memoria.

    Fonte: opennet.ru

Engadir un comentario