Ukukhutshwa kweMesa 20.2.0, ukuphunyezwa kwamahhala kwe-OpenGL kunye neVulkan

Yaziswa ukukhutshwa kokuphunyezwa simahla kwe-OpenGL kunye neVulkan API - Mesa 20.2.0. Π’ Mesa 20.2 iphunyeziwe полная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.6 для GPU Intel (Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ i965, iris) ΠΈ AMD (radeonsi), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.5 для GPU AMD (r600), NVIDIA (nvc0) ΠΈ llvmpipe, OpenGL 4.3 для virgl (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ GPU Virgil3D yeQEMU/KVM), kunye neVulkan 1.2 inkxaso ye-Intel kunye ne-AMD amakhadi.

Phakathi utshintsho:

  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ lvmpipe, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΌ для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ отрисовки, обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° OpenGL 4.5.
  • Π’ Vulkan-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ RADV (для ΠΊΠ°Ρ€Ρ‚ AMD) ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ задСйствован компилятор ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² Β«ACOΒ«, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ развиваСтся ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Valve Π² качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ компилятору ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² LLVM. ACO написан Π½Π° языкС Π‘++, разрабатываСтся с оглядкой Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ примСнСния для JIT-компиляции ΠΈ Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° обСспСчСниС Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ для ΡˆΠ΅ΠΉΠ΄Π΅Ρ€ΠΎΠ² ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° достиТСниС ΠΎΡ‡Π΅Π½ΡŒ высокой скорости компиляции.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° GPU AMD Navi 21 (Navy Flounder) ΠΈ Navi 22 (Sienna Cichlid).
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… для GPU Intel ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡ€ΠΎΠ°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Ichibi leRocket ΠΈ yongezwe Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° дискрСтных ΠΊΠ°Ρ€Ρ‚ Intel Xe DG1.
  • Π Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹ возмоТности Gallium3D-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Zink, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ API OpenGL ΠΏΠΎΠ²Π΅Ρ€Ρ… Vulkan. Zink позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ ускорСнный OpenGL ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Π² систСмС Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ API Vulkan.
  • Π’ Gallium3D-Π΄Ρ€Π²ΠΉΠ²Π΅Ρ€ Nouveau NVC0 задСйствован HMM (heterogeneous memory management) для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ OpenCL SVM (Shared Virtual Memory).
  • Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π΅ Iphaneli стабилизирована ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° 3D-Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° для GPU Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx).
  • Π’ RadeonSI внСсСны ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ, связанныС с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ GPU.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° дискС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ прСдставлСния TGSI (Tungsten Graphics Shader Infrastructure).
  • Kongezwe izongezo ze-OpenGL ezitsha:
    • GL_ARB_compute_variable_group_size для Intel Iris.
    • GL_ARB_gl_spirv для Nouveau nvc0.
    • GL_NV_half_float для Nouveau nvc0.
    • GL_NV_copy_depth_to_color для Nouveau nvc0.
    • GL_ARB_spirv_extensions для Nouveau nvc0.
    • GL_EXT_shader_group_vote для llvmpipe.
    • GL_ARB_gpu_shader5 для llvmpipe.
    • GL_ARB_post_depth_coverage для llvmpipe.
    • GL_EXT_texture_shadow_lod для llvmpipe.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° EGL-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ EGL_KHR_swap_buffers_with_damage (для X11 DRI3), Π° Ρ‚Π°ΠΊΠΆΠ΅ GLX-Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ GLX_EXT_swap_control (DRI2, DRI3) ΠΈ GLX_EXT_swap_control_tear (DRI3).
  • Izandiso ezongeziweyo kumqhubi we-RADV Vulkan (yekhadi le-AMD):
    • VK_EXT_4444_iifomathi
    • VK_KHR_ememory_model
    • VK_AMD_ucwangciso_qokelela_i -_lod
    • VK_AMD_gpu_shader_cala_float
    • VK_AMD_gpu_shader_int16
    • VK_EXT_extended_dynamic_state
    • VK_EXT_image_robustness
    • VK_EXT_i-data_yimfihlo
    • VK_EXT_custom_border_umbala
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_shader_demote_to_helper_vocation
    • VK_EXT_subroup_size_control
    • VK_GOOGLE_uhlobo_lomsebenzisi
    • VK_KHR_shader_subgroup_extended_intlobo
  • Ukongezwa kongeziweyo kumqhubi we-ANV Vulkan (kumakhadi e-Intel):
    • VK_EXT_image_robustness
    • VK_EXT_shader_atomic_float
    • VK_EXT_4444_iifomathi
    • VK_EXT_extended_dynamic_state
    • VK_EXT_i-data_yimfihlo
    • VK_EXT_custom_border_umbala
    • VK_EXT_pipeline_creation_cache_control

umthombo: opennet.ru

Yongeza izimvo