Релиз Mesa 22.2, свободной реализации OpenGL и Vulkan
После четырёх месяцев разработки опубликован релиз свободной реализации API OpenGL и Vulkan — Mesa 22.2.0. Первый выпуск ветки Mesa 22.2.0 имеет экспериментальный статус — после проведения окончательной стабилизации кода будет выпущена стабильная версия 22.2.1.
В Mesa 22.2 доступна поддержка графического API Vulkan 1.3 в драйверах anv для GPU Intel, radv для GPU AMD и tu для GPU Qualcomm. Поддержка Vulkan 1.2 реализована в режиме эмулятора (vn), Vulkan 1.1 — в программном растеризаторе lavapipe (lvp), а Vulkan 1.0 в драйвере v3dv (GPU Broadcom VideoCore VI из Raspberry Pi 4). В Mesa также обеспечивается полная поддержка OpenGL 4.6 для драйверов 965, iris (Intel), radeonsi (AMD), zink и llvmpipe. Поддержка OpenGL 4.5 доступна для GPU AMD (r600) и NVIDIA (nvc0), а OpenGL 4.3 для virgl (виртуальный GPU Virgil3D для QEMU/KVM) и vmwgfx (VMware).
Основные новшества:
В драйвере для GPU Qualcomm (tu) обеспечена поддержка графического API Vulkan 1.3.
В драйвер Panfrost добавлена поддержка GPU Mali на базе микроархитектуры Valhall (Mali-G57). Драйвер совместим со спецификацией OpenGL ES 3.1.
Продолжена реализация драйвера Vulkan для GPU на базе архитектуры PowerVR Rogue, развиваемой компанией Imagination.
В Vulkan-драйвере ANV (Intel) и OpenGL-драйвере Iris улучшена поддержка дискретных видеокарт Intel DG2-G12 (Arc Alchemist). В Vulkan-драйвере значительно (примерно в 100 раз) повышена производительность кода для трассировки лучей…
Драйвер R600g для GPU AMD серий с Radeon HD 2000 по HD 6000 переведён на использование бестипового промежуточного представления (IR) шейдеров NIR. Поддержка NIR также позволяет получить поддержку промежуточного представления TGSI (Tungsten Graphics Shader Infrastructure) через задействование слоя для трансляции NIR в TGSI.
В OpenGL драйвере Nouveau началась работа по реализации поддержки GPU RTX 30 «Ampere».
В драйвер Etnaviv для карт Vivante реализована поддержка асинхронной компиляции шейдеров.
- Добавлена поддержка Vulkan-расширений:
VK_EXT_robustness2 для драйвера lavapipe.
VK_EXT_image_2d_view_of_3d для RADV.
VK_EXT_primitives_generated_query для RADV.
VK_EXT_non_seamless_cube_map для RADV, ANV, lavapipe.
VK_EXT_border_color_swizzle для lavapipe, ANV, turnip, RADV.
VK_EXT_shader_module_identifier для RADV.
VK_EXT_multisampled_render_to_single_sampled для lavapipe.
- VK_EXT_shader_subgroup_vote для lavapipe.
- VK_EXT_shader_subgroup_ballot для lavapipe
VK_EXT_attachment_feedback_loop_layout для RADV.
- Добавлена поддержка расширений OpenGL:
WGL_ARB_create_context_robustness.
ARB_robust_buffer_access_behavior для d3d12.
- EGL_KHR_context_flush_control.
- GLX_ARB_context_flush_control
- GL_EXT_memory_object_win32 для zink и d3d12.
- GL_EXT_semaphore_win32 для zink и d3d12.
Источник: http://www.opennet.ru/opennews/art.shtml? num=57811
© OpenNet