Съдържание на статията
Много силно издание с множество разширения
Новото издание на Mesa продължава традицията на навременни обновления и разширява възможностите на отворените графични драйвъри. Версия 26.1 носи значими подобрения за Vulkan, OpenGL и OpenCL стековете, както и важни промени за виртуализирани среди и по‑малките драйвъри в проекта.
Mesa 26.1 добавя нови Vulkan разширения за драйвърите RADV (AMD), ANV (Intel), NVK (NVIDIA), Turnip, panvk и други, като част от тях са насочени към по‑добра производителност в игри и по‑ефективно управление на паметта. В същото време Zink продължава да се развива като ключов слой за OpenGL‑върху‑Vulkan, Rusticl получава подобрения в OpenCL поддръжката, а RADV вече предлага кодиране с ниска латенция и декодиране чрез Vulkan Video. Сред по‑интересните новости е и експерименталната поддръжка за Intel Nova Lake P, както и OpenGL ES 2.0 за PowerVR GPU чрез Zink.
Промени при виртуализацията и статуса на VirGL
Ерик Енгестрьом подчертава в анонса, че компонентът за ускорена графика във виртуални машини VirGL вече не се счита за поддържан. Ако не се появи нов поддръжник, кодът може да бъде премахнат в бъдещо издание. За щастие, съвременните алтернативи за хардуерно ускорение във виртуални среди са значително по‑зрели.
Паралелно с това Intel Iris, Crocus и ANV вече поддържат VirIO‑GPU native‑context, което подобрява паравиртуализираната графика при Intel хардуер в гост системи.
Нови разширения: огромен списък
Списъкът с нови OpenGL, Vulkan и OpenCL разширения е необичайно дълъг, затова ги групираме тематично, вместо да следваме оригиналния ред.
Разширения за синхронизация, тайминг и представяне на кадри
VK_EXT_present_timing (RADV, NVK, Turnip, ANV, Honeykrisp, panvk), VK_KHR_present_id и VK_KHR_present_wait (panvk, v3dv), GL_NV_timeline_semaphore (radeonsi), VK_KHR_get_surface_capabilities2 и VK_KHR_get_display_properties2 (panvk).
Подобрения в обработката на изображения и формати
VK_QCOM_image_processing (Turnip), VK_EXT_image_drm_format_modifier (pvr), VK_EXT_hdr_metadata (v3dv), VK_EXT_astc_decode_mode (panvk), VK_EXT_color_write_enable (panvk), VK_EXT_image_view_min_lod (panvk), VK_EXT_non_seamless_cube_map (pvr), VK_EXT_rgba10x6_formats (panvk).
Разширения за памет, буфери и командни списъци
VK_KHR_copy_memory_indirect (nvk, RADV/GFX8+), VK_EXT_zero_initialize_device_memory (panvk), VK_EXT_map_memory_placed (panvk), VK_EXT_nested_command_buffer (panvk), VK_KHR_device_address_commands (RADV), VK_VALVE_mutable_descriptor_type (panvk), VK_EXT_descriptor_heap (RADV, чрез RADV_EXPERIMENTAL=heap).
Shader и изчислителни разширения
VK_VALVE_shader_mixed_float_dot_product (Radeon Vega20, Navi14, RDNA2+), VK_EXT_shader_stencil_export (panvk), VK_EXT_shader_atomic_float (panvk), VK_KHR_shader_integer_dot_product (pvr), GL_EXT_shader_image_load_store (panfrost), както и голям пакет OpenCL subgroup разширения за asahi, iris, llvmpipe, radeonsi и zink.
Разширения за рендеринг и геометрия
VK_EXT_depth_clamp_control (panvk), VK_EXT_primitive_restart_index (RADV), VK_EXT_attachment_feedback_loop_layout и dynamic_state (panvk), fragmentStoresAndAtomics (panvk/v6‑7), GL_ARB_sample_shading (v3d), wideLines, multiDrawIndirect, depthBiasClamp и fullDrawIndexUint32 (pvr).
Развитие на по‑малките драйвъри и работа по Vulkan‑on‑Metal
NVK продължава да се стабилизира като новия open‑source драйвър за NVIDIA, а panvk получава най‑голям брой нови разширения в това издание. Работата по Vulkan‑върху‑Metal слоя KosmicKrisp също напредва, макар и все още да е в ранна фаза.
Mesa 26.1 е едно от най‑богатите на промени издания през последните години и поставя основата за още по‑агресивни оптимизации в 26.2.










