Состоялся релиз свободной реализации API OpenGL и Vulkan — Mesa 25.1.0. Первый выпуск ветки Mesa 25.1.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 25.1.1. Выпуск Mesa 24.0.0 произошёл в феврале 2024 года. Выпуск Mesa 25.0.0 случился в февраля 2025 года.
В Mesa 25.1 доступна поддержка графического API Vulkan 1.4 в драйверах ANV для GPU Intel, RADV для GPU AMD, NVK для GPU NVIDIA, Asahi для GPU Apple, Turnip для GPU Qualcomm и в программном растеризаторе lavapipe (lvp). В режиме эмулятора (vn) поддерживается API Vulkan 1.3, в драйвере PanVK для GPU ARM Mali — Vulkan 1.2, а в драйверах v3dv (GPU Broadcom VideoCore для Raspberry Pi 4+) и dzn (реализация Vulkan поверх Direct3D 12) — Vulkan 1.0.
В Mesa также обеспечивается полная поддержка OpenGL 4.6 для драйверов iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (старые GPU Intel Gen4-Gen7), zink, llvmpipe, virgl (виртуальный GPU Virgil3D для QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (прослойка для организации работы OpenGL поверх DirectX 12) и asahi (GPU AGX, используемый в чипах Apple M1 и M2). Поддержка OpenGL 4.5 доступна для GPU AMD (r600) и Nvisia (nvc0). Поддержка OpenGL 3.3 присутствует в драйверах softpipe (программный растеризатор) и nv50 (NVIDIA NV50). В драйверах panfrost (GPU ARM Mali) и v3d (GPU Broadcom VideoCore) поддерживается OpenGL 3.1.
Согласно данным OpenNET и Phoronix, в Mesa 25.1 появились новые опции и внесены такие основные изменения:
в драйвере PanVK реализована поддержка графического API Vulkan 1.2 для GPU ARM Mali на базе микроархитектуры v10+. Добавлена поддержка цветовых пространств YCbCr. Реализованы типы storagePushConstant16, storageInputOutput16 и shaderFloat16. Добавлена поддержка GPU Mali G720 и G725. Обеспечена поддержка метода сглаживания MSAA (Multisample anti‑aliasing) в режимах с 8 и 16 пробами цвета для каждого пикселя;
в OpenGL‑драйвере Panfrost реализована поддержка GPU Mali G720, G725 и G925;
в режиме эмулятора (vn) появилась поддержка API Vulkan 1.4;
разработка драйвера Asahi для GPU Apple AGX, применяемых в чипах Apple Silicon, полностью перенесена в Mesa, а в состав ядра Linux принят его UAPI. Дистрибутивам больше не нужно использовать отдельные сборки данного драйвера;
Vulkan‑драйвер NVK задействован по умолчанию для GPU NVIDIA Maxwell (GTX 700/800/900), Pascal (GTX 1000) и Volta (TITAN V), для которых реализована полная поддержка Vulkan 1.4. Ранее совместимость с Vulkan 1.4 в NVK была обеспечена только для GPU NVIDIA на базе микроархитектур Turing (серии GeForce GTX 16xx, RTX 20xx и Quadro RTX), Ampere (серии GeForce RTX 30xx и RTX A2000/4000/5000/6000) и Ada (серии GeForce RTX 4xxx, RTX 4000 SFF, RTX 4xxx/5000/6000 Ada). Добавлена поддержка Vulkan‑расширения VK_MESA_image_alignment_control;
поддержка OpenGL для GPU NVIDIA, начиная с микроархитектуры Turing, переключена по умолчанию с драйвера Nouveau (nvc0) на OpenGL‑драйвер Zink в связке с Vulkan‑драйвером NVK. Zink предоставляет реализацию OpenGL 4.6 поверх Vulkan, позволяющую получить аппаратно ускоренный OpenGL на устройствах, поддерживающих API Vulkan. Производительность Zink близка к производительности родных реализаций OpenGL;
в интерфейсе интеграции графического API Vulkan с оконными системами (WSI, Windowing System Integration) реализована поддержка Wayland‑протокола color‑management, предоставляющего возможности для управления цветом и поддержки расширенного динамического диапазона яркости (HDR, High Dynamic Range);
в Vulkan‑драйвере ANV (Intel) улучшена поддержка GPU Intel на базе архитектуры Xe2, таких как Intel Core Ultra Xe2 с интегрированной графикой Intel Arc и дискретные GPU Intel Arc B580/B570 «Battlemage»;
в Vulkan‑драйвере RADV (AMD) улучшена поддержка GPU серии Radeon RX 9000 (RDNA4/GFX12). Добавлен режим кодирования видео с низкими задержками. Обеспечена поддержка Vulkan‑расширений VK_EXT_device_memory_report и VK_EXT_sample_locations;
в OpenGL‑драйвер Etnaviv для GPU Vivante добавлена поддержка OpenGL‑расширения KHR_partial_update;
в OpenGL‑драйвер v3d (GPU Broadcom VideoCore для Raspberry Pi) добавлена поддержка OpenGL‑расширений EXT_shader_framebuffer_image_fetch, EXT_shader_framebuffer_image_fetch_coherent, KHR_blend_equation_advanced и KHR_blend_equation_advanced_coherent;
объявлен устаревшим OpenCL‑драйвер Clover, на смену которому пришёл драйвер Rusticl, написанный на языке Rust;
в драйвер Rusticl добавлена поддержка OpenCL‑расширения cl_khr_spirv_linkonce_odr;
объявлен устаревшим и запланирован для удаления в следующем выпуске трекер состояний gallium‑nine, обеспечивающий поддержку API Direct3D 9. Вместо gallium‑nine можно использовать Vulkan и DXVK, имеющий поддержку D3D 8/9/10/11;
объявлен устаревшим и запланирован для удаления в следующем выпуске трекер состояний «gallium‑xa», обеспечивающий поддержку виртуального GPU VMWare («vmwgfx»).
Источник: habr.com