Mesa 22.0 llega con soporte para Vulkan 1.3, mejoras en controladores y mas
Después de cuatro meses de desarrollo se dio a conocer el lanzamiento de la implementación gratuita de la API OpenGL y Vulkan «Mesa 22.0.0», siendo esta la primera versión de la rama Mesa 22.0.0 tiene un estado experimental: después de la estabilización final del código, se lanzará una versión estable 22.0.1.
En esta nueva versión que se presenta se destaca por la implementación de la API de gráficos Vulkan 1.3 en el controlador anv para GPU Intel y radv para GPU AMD.
Ademas de que la compatibilidad con Vulkan 1.2 se implementa en el modo emulador (vn), la compatibilidad con Vulkan 1.1 está disponible para Qualcomm GPU y el rasterizador de software lavapipe, y la compatibilidad con Vulkan 1.0 está disponible para Broadcom VideoCore VI GPU (Raspberry Pi 4).
Mesa 22.0 también proporciona compatibilidad completa con OpenGL 4.6 para los controladores 965, iris (Intel), radeonsi (AMD), zink y llvmpipe. La compatibilidad con OpenGL 4.5 está disponible para GPU AMD (r600) y NVIDIA (nvc0), y OpenGL 4.3 para virgl (GPU virtual Virgil3D para QEMU/KVM) y vmwgfx (VMware).
Principales novedades de Mesa 22.0
Tal y como se mencionó al inicio, una de las principales novedades de esta nueva versión de mesa es que se agregó soporte para la API de gráficos Vulkan 1.3 y del cual puedes conocer sus características más importantes en esta publicación.
Otra de las novedades que se destaca, es que los controladores OpenGL clásicos que no usan la interfaz Gallium3D se ha movido de la composición principal de Mesa a una rama separada «Amber».
Ademas de que esta rama «Amber» también movió el controlador SWR, que ofrecía un rasterizador de software OpenGL basado en el proyecto Intel OpenSWR. La biblioteca xlib clásica se ha excluido de la composición principal, en lugar de lo cual se recomienda utilizar la variante gallium-xlib.
Tambien, podremos encontrar que en esta nueva versión de Mesa 22.0 el controlador D3D12 Gallium con una capa OpenGL sobre la API de DirectX 12 (D3D12) brinda compatibilidad con OpenGL ES 3.1. El controlador se usa en la capa WSL2 para ejecutar aplicaciones gráficas de Linux en Windows.
Los controladores Intel GPU están habilitados de forma predeterminada para admitir Adaptive-Sync (VRR), lo que le permite cambiar de forma adaptativa la frecuencia de actualización de su monitor para obtener una salida fluida y sin interrupciones.
Para EGL, se implementa el mecanismo de «retroalimentación dma-buf», que brinda información adicional sobre las GPU disponibles y le permite aumentar la eficiencia del intercambio de datos entre las GPU principal y secundaria, por ejemplo, para organizar la salida sin almacenamiento en búfer intermedio.
De los demás cambios que se destacan de esta nueva versión:
- Se agregó soporte para OpenGL 4.3 al controlador vmwgfx que se usa para implementar la aceleración 3D en entornos VMware.
- Se agregó soporte para extensiones de controladores Vulkan RADV (AMD), ANV (Intel) y zink (OpenGL sobre Vulkan).
- Se agregó soporte para chips Intel Alderlake (S y N) al controlador OpenGL «iris» y al controlador Vulkan «ANV».
- El controlador RADV (AMD) Vulkan sigue siendo compatible con el trazado de rayos y los sombreadores de trazado de rayos.
- El controlador v3dv desarrollado para el acelerador de gráficos VideoCore VI utilizado desde el modelo Raspberry Pi 4 brinda la capacidad de trabajar en la plataforma Android.
Finalmente si estás interesado en conocer más al respecto sobre esta nueva versión de los controladores Mesa 22.0, puedes consultar los detalles en el siguiente enlace.
¿Cómo instalar los drivers de video Mesa en Linux?
Los paquetes de Mesa se encuentran en todas las distribuciones de Linux, por lo que su instalación puede realizarse ya sea descargando y compilando el código fuente (toda la información al respecto aquí) o de una forma relativamente sencilla, la cual depende de la disponibilidad dentro de los canales oficiales de tu distribución o de terceros.
Para los que son usuarios de Ubuntu, Linux Mint y derivados pueden añadir el siguiente repositorio en donde los controladores son actualizados de manera rápida.
sudo add-apt-repository ppa:kisak/kisak-mesa -y
Ahora vamos a actualizar nuestro listado de paquetes y repositorios con:
sudo apt update
Y finalmente podemos instalar los drivers con:
sudo apt upgrade
Para el caso de los que son usuarios de Arch Linux y derivados estos los instalamos con el siguiente comando:
sudo pacman -S mesa mesa-demos mesa-libgl lib32-mesa lib32-mesa-libgl
Para quienes sean usuarios de Fedora 32 pueden utilizar este repositorio, por lo que deben de habilitar corp con:
sudo dnf copr enable grigorig/mesa-stable sudo dnf update
Finalmente, para los que son usuarios de openSUSE, pueden instalar o actualizar tecleando:
sudo zypper in mesa