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

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

Π’ Mesa 26.0 доступна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° графичСского 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), 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.

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

  • Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ RadeonSI ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° использованиС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ прСдставлСния (IR) ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² NIR ΠΈ бэкСнда компиляции ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ACO, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Valve Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ компилятору ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² LLVM. БэкСнд ACO Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° обСспСчСниС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ для ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° достиТСниС ΠΎΡ‡Π΅Π½ΡŒ высокой скорости компиляции. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ACO Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ компиляции ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ памяти, ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ прСдставлСния ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄. По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с LLVM ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ бэкСнда ACO ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎ 8 Ρ€Π°Π· ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ врСмя компиляции ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ сокращаСт врСмя запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.
  • ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ KosmicKrisp (kk), Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ графичСский API Vulkan ΠΏΠΎΠ²Π΅Ρ€Ρ… API Metal, Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Apple ΠΈ примСняСмого Π² macOS. Π”Ρ€Π°ΠΉΠ²Π΅Ρ€ создан ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ LunarG для использования Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… Mac с Ρ‡ΠΈΠΏΠ°ΠΌΠΈ Apple Silicon.
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ RADV (GPU AMD) Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ трассировки Π»ΡƒΡ‡Π΅ΠΉ.
  • Π’ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния RADV_DEBUG ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ… ΠΎΠΏΡ†ΠΈΠΉ invariantgeom, nodynamicbounds, nongg_gs ΠΈ splitfma вмСсто ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² driconf слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ radv_invariant_geom, radv_no_dynamic_bounds, radv_disable_ngg_gs ΠΈ radv_split_fma.
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ panfrost (GPU ARM Mali) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ GL_EXT_shader_pixel_local_storage.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Vulkan-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ:
    • VK_KHR_relaxed_block_layout для pvr
    • VK_KHR_storage_buffer_storage_class для pvr
    • VK_EXT_external_memory_acquire_unmodified для panvk
    • VK_EXT_discard_rectangles для NVK
    • VK_KHR_present_id для HoneyKrisp
    • VK_KHR_present_id2 для HoneyKrisp
    • VK_KHR_present_wait для HoneyKrisp
    • VK_KHR_present_wait2 для HoneyKrisp
    • VK_KHR_maintenance10 для ANV, NVK, RADV
    • VK_EXT_shader_uniform_buffer_unsized_array для ANV, HK, NVK, RADV
    • VK_EXT_device_memory_report для panvk
    • VK_VALVE_video_encode_rgb_conversion для radv
    • VK_EXT_custom_resolve для RADV
    • VK_EXT_image_drm_format_modifier для panvk/v7
    • VK_KHR_sampler_ycbcr_conversion для panvk/v7
    • VK_KHR_surface_maintenance1 для anv, hk, lvp, nvk, radv, tu, v3dv, vn
    • VK_KHR_swapchain_maintenance1 для anv, hk, lvp, nvk, radv, tu, v3dv, vn

    • Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru
Π°Π²Π°Ρ‚Π°Ρ€ Π°Π²Ρ‚ΠΎΡ€Π°
Erik Peterson Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠœΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€
A ProHoster specialist with over seven years of experience in hosting, network infrastructure, and internet security. I participate in the development and maintenance of server solutions, VPN services, and client platforms. I specialize in stability, data protection, and service optimization for clients. I regularly monitor updates in industry standards and best practices.

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