Релиз на 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). За графични процесори, базирани на архитектурата Intel Xe, която се използва в видео картите Intel от семейството Arc и интегрираната графика, започвайки от процесорите Tiger Lake, е добавена възможността за нулиране на дампове на състоянието за отстраняване на грешки при зависвания на GPU. Подготовката за поддръжка на GPU чиповете Intel LunarLake (Xe 2) е извършена.
  • Добавена е поддръжка за нови разширения Vulkan:
    • VK_EXT_map_memory_placed за драйверите RADV, ANV и NVK
    • VK_KHR_shader_subgroup_rotate за RADV, ANV и NVK
    • VK_KHR_load_store_op_none за RADV, ANV, NVK и Turnip
    • VK_KHR_line_rasterization за RADV, ANV, NVK и Turnip
    • VK_KHR_index_type_uint8 за RADV, ANV, NVK и Turnip
    • VK_KHR_shader_expect_assume за всички Vulkan драйвери
    • VK_KHR_shader_maximal_reconvergence за RADV, ANV и NVK
    • VK_KHR_shader_quad_control за RADV
    • VK_KHR_shader_subgroup_uniform_control_flow за NVK
    • VK_EXT_device_address_binding_report за RADV
    • VK_EXT_external_memory_dma_buf за lavapipe
    • VK_EXT_queue_family_foreign за lavapipe
    • VK_EXT_shader_object за RADV
    • VK_EXT_nested_command_buffer за NVK и RADV
    • VK_EXT_queue_family_foreign за NVK
    • VK_EXT_image_drm_format_modifier за NVK

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster