После трёх месяцев разработки выпущен релиз свободной реализации API Vulkan, OpenGL, OpenGL ES и OpenCL — Mesa 26.3.0. Первый выпуск ветки Mesa 26.3.0 имеет экспериментальный статус — после окончательной стабилизации кода будет выпущена стабильная версия 26.3.1.
В Mesa 26.3 доступна поддержка графического API Vulkan 1.4 в драйверах ANV для GPU Intel, RADV для GPU AMD, NVK для GPU NVIDIA, HoneyKrisp (hk) для GPU Apple, Turnip для GPU Qualcomm, PanVK для GPU ARM Mali, в программном растеризаторе lavapipe (lvp) и в режиме эмулятора (vn). В драйверах v3dv (GPU Broadcom VideoCore для Raspberry Pi 4+) и dzn (реализация Vulkan поверх Direct3D 12) поддерживается Vulkan 1.0, в драйвере kk (KosmicKrisp, Vulkan поверх Metal) — Vulkan 1.1, а в драйвере pvr (GPU Imagination PowerVR) — Vulkan 1.2.
В Mesa также обеспечивается полная поддержка OpenGL 4.6 для драйверов iris (GPU Intel Gen 8+), radeonsi (AMD), Crocus (старые GPU Intel Gen4-Gen7.5), AMD (r600), zink, llvmpipe, virgl (виртуальный GPU Virgil3D для QEMU/KVM), freedreno (Qualcomm Adreno), d3d12 (прослойка для работы OpenGL поверх DirectX 12) и asahi (GPU AGX, используемый в чипах Apple M1 и M2). Поддержка OpenGL 4.5 доступна для GPU NVIDIA (nvc0). Поддержка OpenGL 3.3 присутствует в драйверах softpipe (программный растеризатор) и nv50 (NVIDIA NV50). В драйверах panfrost (GPU ARM Mali) и v3d (GPU Broadcom VideoCore) поддерживается OpenGL 3.1.
Glavne novosti:
- Добавлены правила для AI-ассистентов, в которых указано, что Mesa развивает сообщество людей, поэтому AI-агентам не следует открывать pull-запросы или публиковать комментарии. Для коммитов, отправленных людьми, но созданных с использованием AI, предписано явно указывать тег «Generated-by: LLM» или «Assisted-by: LLM». Для драйверов asahi, nouveau, panfrost, imagination, jay и poly разработчиками введены отдельные ограничения на использование AI.
- В драйвере panvk для GPU ARM Mali v6-7 реализована поддержка Vulkan 1.3.
В драйвере Etnaviv для GPU Vivante серии HALTI5 реализована поддержка OpenGL ES 3.0 и языка шейдеров GLSL 1.30. - В OpenGL-драйвер Panfrost добавлена поддержка GPU Mali G68, G715 и G615.
- В Vulkan-драйвер PanVK добавлена поддержка GPU Mali G715 и G615.
- В Vulkan-драйвер pvr добавлена поддержка GPU Imagination PowerVR BXM-4-64.
- Для GPU Intel Xe2 и Xe3 по умолчанию задействован компилятор шейдеров Intel Jay.
- Стабилизирована и включена по умолчанию поддержка графической подсистемы чипов Intel Nova Lake.
- В драйвер NVK (NVIDIA) добавлена поддержка Vulkan-расширений для ускорения обработки видео.
- Для GPU Intel включено сжатие буферов, позволившее повысить производительность в играх при их запуске с использованием DXVK.
- Для GPU Intel включено сжатие буферов, позволившее повысить производительность в играх при их запуске с использованием DXVK.
- Dodana je podpora za GPU AMD GFX1171, temelječ na mikroarhitekturi RDNA 4m.
- Dodana je podpora za Vulkan razširitve:
- VK_AMD_anti_lag za RADV;
- VK_IMG_filter_linear_2d za pvr;
- VK_KHR_maintenance7 za pvr;
- VK_KHR_maintenance4 za panvk/v6-7;
- VK_KHR_maintenance5 za panvk/v6-7;
- VK_KHR_maintenance7 za panvk/v6-7;
- VK_KHR_maintenance8 za panvk/v6-7;
- VK_KHR_shader_float_controls2 za panvk/v6-7;
- VK_KHR_shader_subgroup_extended_types za panvk/v6-7;
- VK_EXT_subgroup_size_control za panvk/v6-7;
- VK_ARM_shader_core_builtins za panvk/v6-7;
- VK_ARM_shader_core_properties za panvk/v6-7;
- VK_ARM_scheduling_controls za panvk/v6-7;
- VK_KHR_synchronization2 za pvr;
- VK_KHR_copy_memory_indirect za panvk;
- VK_KHR_maintenance6 za panvk/v6-7;
- VK_KHR_spirv_1_4 za panvk/v6-7;
- VK_EXT_device_memory_report za v3dv;
- VK_KHR_video_encode_feedback2 za RADV;
- VK_EXT_global_priority za pvr;
- VK_EXT_global_priority_query za pvr;
- VK_KHR_global_priority za pvr;
- VK_KHR_cooperative_matrix za panvk;
- VK_EXT_inline_uniform_block za pvr;
- VK_KHR_shader_fma za pvr;
- VK_EXT_cooperative_matrix_maintenance1 za radv, lavapipe;
- VK_KHR_device_address_commands za nvk;
- VK_KHR_shader_constant_data za panvk;
- VK_KHR_shader_float_controls2 za pvr;
- VK_KHR_performance_query za GFX12;
- VK_EXT_primitive_topology_list_restart za pvr;
- VK_KHR_incremental_present za panvk;
- VK_EXT_swapchain_colorspace za panvk;
- VK_KHR_push_descriptor za pvr;
- VK_EXT_image_sliced_view_of_3d za pvr;
- VK_EXT_image_compression_control za panvk;
- VK_KHR_shader_untyped_pointers za HK;
- VK_KHR_maintenance10 za HK;
- VK_KHR_shader_fma za HK;
- VK_EXT_primitive_restart_index za HK;
- VK_QCOM_rotated_copy_commands za Turnip;
- VK_KHR_maintenance10 za panvk;
- VK_KHR_map_memory2 za v3dv;
- VK_KHR_unified_image_layouts za v3dv;
- VK_INTEL_shader_integer_functions2 za panvk;
- VK_KHR_internally_synchronized_queues za NVK;
- VK_KHR_maintenance11 za NVK;
- VK_EXT_primitive_restart_index za NVK;
- VK_KHR_maintenance11 za NVK;
- VK_EXT_transform_feedback za pvr.
- V OpenGL gonilniku radeonsi je bila dodana podpora za EGL razširitev EGL_NV_context_priority_realtime.
- V gonilniku panfrost za GPU Vivante serije HALTI5 je bila dodana podpora za OpenGL razširitve:
- GL_ARB_texture_multisample;
- GL_EXT_color_buffer_float;
- GL_EXT_conservative_depth;
- GL_EXT_draw_buffers_indexed;
- GL_EXT_EGL_image_storage;
- GL_EXT_EGL_image_storage_compression;
- GL_EXT_shader_integer_mix;
- GL_EXT_sRGB_write_control;
- GL_EXT_texture_compression_rgtc;
- GL_EXT_texture_sRGB_decode;
- GL_EXT_texture_sRGB_R8;
- GL_EXT_texture_sRGB_RG8;
- GL_EXT_texture_storage_compression;
- GL_MESA_framebuffer_flip_y;
- GL_MESA_shader_integer_functions;
- GL_OES_draw_buffers_indexed;
- GL_OES_EGL_image_external_essl3;
- GL_EXT_texture_integer;
- GL_ARB_shader_bit_encoding;
- GL_ARB_texture_rgb10_a2ui.
- Dodana je podpora za OpenCL razširitve:
- cl_ext_float_atomics za iris, llvmpipe in zink;
- cl_khr_semaphore za iris;
- cl_khr_external_semaphore za iris;
- cl_khr_external_semaphore_sync_fd za iris.
Izvor: opennet.ru
