Релиз Mesa 24.1, свободной реализации OpenGL и Vulkan

Опубликован релиз свободной реализации API OpenGL и Vulkan – Mesa 24.1.0. Первый выпуск ветки Mesa 24.1.0 имеет экспериментальный статус – после проведения окончательной стабилизации кода будет выпущена стабильная версия 24.1.1.

В Mesa 24.0 доступна поддержка графического API Vulkan 1.3 в драйверах anv для GPU Intel, radv для GPU AMD, NVK для GPU NVIDIA, tu для GPU Qualcomm, в программном растеризаторе lavapipe (lvp) и в режиме эмулятора (vn). Поддержка Vulkan 1.0 реализована в драйверах v3dv (GPU Broadcom VideoCore VI из Raspberry Pi 4) и dzn (реализация Vulkan поверх Direct3D 12).

В 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) и NVIDIA (nvc0). Поддержка OpenGL 3.3 присутствует в драйверах softpipe (программный растеризатор) и nv50 (NVIDIA NV50).

Основные новшества:

  • В драйвере asahi, развиваемом для GPU AGX, используемом в ARM-чипах Apple, обеспечена поддержка OpenGL 4.6 и OpenGL ES 3.2.
  • Значительно улучшена работа драйвера 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 1.3 в NVK сертифицирована консорциумом Khronos. Улучшена работа поверх NVK прослойки DXVK, предоставляющей реализацию Direct3D 9, 10 и 11.
  • Добавлено изменение, позволяющее задействовать драйвер Zink (реализация OpenGL поверх Vulkan) для обеспечения поддержки OpenGL 4.6 на системах с новыми сериями видеокарт NVIDIA (начиная с GeForce RTX 20xx), с которыми могут наблюдаться проблемы в штатном OpenGL-драйвере Nouveau (NVC0). Для включения Zink вместо NVC0 следует выставить переменную окружения “NOUVEAU_USE_ZINK=1”.
  • В драйвере Panfrost добавлена поддержка GPU Mali G610, Mali G310 и
    Mali T600.
  • Добавлена поддержка новых расширений Vulkan:
Release. Ссылка here.