Π Π΅Π»ΠΈΠ· Mesa 25.1, свободной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ OpenGL ΠΈ Vulkan

ПослС Ρ‚Ρ€Ρ‘Ρ… мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прСдставлСн Ρ€Π΅Π»ΠΈΠ· свободной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ API OpenGL ΠΈ Vulkan β€” Mesa 25.1.0. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ выпуск Π²Π΅Ρ‚ΠΊΠΈ Mesa 25.1.0 ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ статус β€” послС провСдСния ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ стабилизации ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π° ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ вСрсия 25.1.1.

Π’ Mesa 25.1 доступна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° графичСского API Vulkan 1.4 Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… ANV для GPU Intel, RADV для GPU AMD, NVK для GPU NVIDIA, Asahi для GPU Apple, Turnip для GPU Qualcomm, Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ растСризаторС lavapipe (lvp) ΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ эмулятора (vn). Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ PanVK для GPU ARM Mali β€” Vulkan 1.2, Π° Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… v3dv (GPU Broadcom VideoCore для Raspberry Pi 4+) ΠΈ dzn (рСализация Vulkan ΠΏΠΎΠ²Π΅Ρ€Ρ… Direct3D 12) β€” Vulkan 1.0.

Π’ 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). Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… panfrost (GPU ARM Mali) ΠΈ v3d (GPU Broadcom VideoCore) поддСрТиваСтся OpenGL 3.1.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π²Π°:

  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ PanVK Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° графичСского API Vulkan 1.2 для GPU ARM Mali Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ v10+. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Ρ… пространств YCbCr. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‚ΠΈΠΏΡ‹ storagePushConstant16, storageInputOutput16 ΠΈ shaderFloat16. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU Mali G720 ΠΈ G725. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° сглаТивания MSAA (Multisample anti-aliasing) Π² Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… с 8 ΠΈ 16 ΠΏΡ€ΠΎΠ±Π°ΠΌΠΈ Ρ†Π²Π΅Ρ‚Π° для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ пиксСля.
  • Π’ OpenGL-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ Panfrost Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU Mali G720, G725 ΠΈ G925.
  • Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ эмулятора (vn) появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° API Vulkan 1.4.
  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Asahi для GPU Apple AGX, примСняСмых Π² Ρ‡ΠΈΠΏΠ°Ρ… Apple Silicon, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСнСсСна Π² Mesa, Π° Π² состав ядра Linux принят Π΅Π³ΠΎ UAPI. Дистрибутивам большС Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ сборки Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°.
  • Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ NVK задСйствован ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для GPU NVIDIA Maxwell (GTX 700/800/900), Pascal (GTX 1000) ΠΈ Volta (TITAN V), для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Vulkan 1.4. Π Π°Π½Π΅Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с Vulkan 1.4 Π² 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-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ VK_MESA_image_alignment_control.
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL для GPU NVIDIA, начиная с ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Turing, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Nouveau (nvc0) Π½Π° OpenGL-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Zink Π² связкС с Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠΌ NVK. Zink прСдоставляСт Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ OpenGL 4.6 ΠΏΠΎΠ²Π΅Ρ€Ρ… Vulkan, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ ускорСнный OpenGL Π½Π° устройствах, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… API Vulkan. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Zink Π±Π»ΠΈΠ·ΠΊΠ° ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ€ΠΎΠ΄Π½Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ OpenGL.
  • Π’ интСрфСйсС ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ графичСского API Vulkan с ΠΎΠΊΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами (WSI, Windowing System Integration) Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Wayland-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° color-management, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ возмоТности для управлСния Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ динамичСского Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° яркости (HDR, High Dynamic Range).
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ ANV (Intel) ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU Intel Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Xe2, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Intel Core Ultra Xe2 с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ Intel Arc ΠΈ дискрСтныС GPU Intel Arc B580/B570 Β«BattlemageΒ».
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ RADV (AMD) ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU сСрии Radeon RX 9000 (RDNA4/GFX12). Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ кодирования Π²ΠΈΠ΄Π΅ΠΎ с Π½ΠΈΠ·ΠΊΠΈΠΌΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°ΠΌΠΈ. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Vulkan-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ VK_EXT_device_memory_report ΠΈ VK_EXT_sample_locations.
  • Π’ OpenGL-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Etnaviv для GPU Vivante Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ KHR_partial_update.
  • Π’ OpenGL-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ v3d (GPU Broadcom VideoCore для Raspberry Pi) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ EXT_shader_framebuffer_image_fetch, EXT_shader_framebuffer_image_fetch_coherent, KHR_blend_equation_advanced ΠΈ KHR_blend_equation_advanced_coherent.
  • ОбъявлСн ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ OpenCL-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Clover, Π½Π° смСну ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΡ€ΠΈΡˆΡ‘Π» Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Rusticl, написанный Π½Π° языкС Rust.
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Rusticl Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenCL-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ cl_khr_spirv_linkonce_odr.
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ PanVK Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Vulkan-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ:
    • VK_KHR_depth_stencil_resolve
    • VK_KHR_separate_depth_stencil_layouts
    • VK_EXT_separate_stencil_usage
    • VK_KHR_sampler_ycbcr_conversion
    • VK_EXT_ycbcr_2plane_444_formats
    • VK_EXT_ycbcr_image_arrays
    • VK_KHR_imageless_framebuffer
    • VK_KHR_uniform_buffer_standard_layout
    • VK_EXT_border_color_swizzle
    • VK_KHR_shader_subgroup_uniform_control_flow
    • VK_KHR_shader_maximal_reconvergence
    • VK_KHR_shader_subgroup_extended_types
    • VK_KHR_display
    • VK_EXT_display_control
    • VK_KHR_line_rasterization
    • VK_EXT_line_rasterization
    • VK_KHR_shader_float_controls
    • VK_KHR_shader_float_controls2
    • VK_KHR_spirv_1_4
    • VK_KHR_dynamic_rendering_local_read
    • VK_EXT_subgroup_size_control
    • VK_KHR_format_feature_flags2
    • VK_EXT_direct_mode_display
  • ОбъявлСн ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ для удалСния Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ выпускС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ состояний gallium-nine, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ API Direct3D 9.
  • ОбъявлСн ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ ΠΈ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ для удалСния Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ выпускС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ состояний Β«gallium-xaΒ», ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ GPU VMWare (Β«vmwgfxΒ»).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ