Lanzamiento de Mesa 21.1, una implementación gratuita de OpenGL y Vulkan

Se ha presentado el lanzamiento de la implementación gratuita de OpenGL y Vulkan API - Mesa 21.1.0. La primera versión de la rama Mesa 21.1.0 tiene un estado experimental: después de la estabilización final del código, se lanzará una versión estable 21.1.1. Mesa 21.1 incluye soporte completo para OpenGL 4.6 para los controladores 965, iris (Intel), radeonsi (AMD), zink y llvmpipe. La compatibilidad con OpenGL 4.5 está disponible para las GPU AMD (r600) y NVIDIA (nvc0), y la compatibilidad con OpenGL 4.3 para virgl (GPU virtual Virgil3D para QEMU/KVM). La compatibilidad con Vulkan 1.2 se implementa para tarjetas Intel y AMD, Vulkan 1.1 para GPU Qualcomm y el rasterizador de software lavapipe, y Vulkan 1.0 para GPU Broadcom VideoCore VI (Raspberry Pi 4).

Principales novedades:

  • Se agregó compatibilidad con las extensiones VK_KHR_workgroup_memory_explicit_layout y VK_KHR_zero_initialize_workgroup_memory a los controladores Vulkan RADV (AMD) y ANV (Intel).
  • Se agregó compatibilidad con modificadores de formato DRM al controlador RADV (para tarjetas AMD GFX9) (la extensión VK_EXT_image_drm_format_modifier está habilitada).
  • El controlador RADV incluye soporte VRS (Variable Rate Shading) para usar con cualquier zona de influencia de profundidad. VRS mejora la productividad a costa de la calidad.
  • Se agregó soporte para GPU AMD Aldebaran (gfx90a).
  • Se agregó un nuevo controlador Venus con una implementación de GPU virtual (virtio-gpu) basada en la API de Vulkan.
  • El controlador Zink (una implementación de la API OpenGL sobre Vulkan) incluye soporte para OpenGL 4.6 y OpenGL ES 3.1. Zink le permite obtener OpenGL acelerado por hardware si el sistema tiene controladores limitados a admitir solo la API de Vulkan. El rendimiento de Zink es cercano al de las implementaciones nativas de OpenGL.
  • El controlador lavapipe con la implementación de un rasterizador de software para la API de Vulkan (análogo a llvmpipe, pero para Vulkan) agregó soporte para Vulkan 1.1 e implementó la extensión de Vulkan VK_KHR_copy_commands2. La implementación del software en lavapipe se basa en reflejar las llamadas de la API de Vulkan a la API de Gallium.
  • Se agregó soporte para almacenar cachés de sombreadores en un archivo.
  • Los controladores Virgl (Virtual GPU Virgil3D para QEMU/KVM) y Lima (ARM Mali GPU) brindan soporte para el almacenamiento en caché de sombreadores en el disco.
  • El controlador Gallium D3D12 con una capa para organizar el trabajo OpenGL sobre la API DirectX 12 (D3D12) garantiza la compatibilidad con OpenGL 3.3 cuando se trabaja sobre los controladores D3D12 WARP (rasterizador de software) y NVIDIA. El controlador se utiliza en la capa WSL2 para ejecutar aplicaciones gráficas de Linux en Windows.
  • Se agregaron nuevas extensiones OpenGL:
    • GL_EXT_ Depth_bounds_test para controladores de softpipe y zinc
    • GL_EXT_texture_filter_minmax para el controlador nvc0 (gm200+)
    • GL_ARB_texture_filter_minmax para el controlador nvc0 (gm200+)
    • GL_ARB_post_ Depth_coverage para el controlador zink.

Fuente: opennet.ru

Añadir un comentario