Релиз 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-драйверах реализована поддержка явной синхронизации (Explicit Sync) для Wayland и X11. Explicit Sync позволяет приложениям информировать композитный менеджер о готовности вывода кадра на экран, что позволяет добиться снижения задержек и избавиться от появления артефактов при выводе графики.
  • Расширены возможности драйвера d3d12, предоставляющего прослойку с реализацией OpenGL поверх DirectX 12.
  • В драйвере V3DV, развиваемом для GPU Broadcom VideoCore (применяется в платах Raspberry Pi), добавлена поддержка динамической отрисовки.
  • Vulkan-драйвер ANV (Intel) переведён на использование асинхронных операций маппинга видеопамяти (Asynchronous VM_BIND). Для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake, добавлена возможность сброса дампов состояния для отладки зависаний GPU. Проведена подготовка к поддержке GPU чипов Intel LunarLake (Xe 2).
  • Добавлена поддержка новых расширений Vulkan:

Источник: http://www.opennet.ru/opennews/art.shtml?num=61232