Mesa 24.3 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди, OpenGL рдЖрдгрд┐ Vulkan рдЪреА рд╡рд┐рдирд╛рдореВрд▓реНрдп рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА

рддреАрди рдорд╣рд┐рдиреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рдирдВрддрд░, OpenGL рдЖрдгрд┐ Vulkan APIs, Mesa 24.3.0 рдЪреНрдпрд╛ рд╡рд┐рдирд╛рдореВрд▓реНрдп рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреЗ рдкреНрд░рдХрд╛рд╢рди рдкреНрд░рдХрд╛рд╢рд┐рдд рдЭрд╛рд▓реЗ рдЖрд╣реЗ. рдореЗрд╕рд╛ 24.3.0 рд╢рд╛рдЦреЗрдЪреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рд░рд┐рд▓реАрдЭрдордзреНрдпреЗ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╕реНрдерд┐рддреА рдЖрд╣реЗ - рдХреЛрдбрдЪреНрдпрд╛ рдЕрдВрддрд┐рдо рд╕реНрдерд┐рд░реАрдХрд░рдгрд╛рдирдВрддрд░, рдПрдХ рд╕реНрдерд┐рд░ рдЖрд╡реГрддреНрддреА 24.3.1 рдЬрд╛рд░реА рдХреЗрд▓реА рдЬрд╛рдИрд▓.

Mesa 24.3 рдЗрдВрдЯреЗрд▓ GPUs рд╕рд╛рдареА anv рдордзреНрдпреЗ Vulkan 1.3 рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ API, AMD GPUs рд╕рд╛рдареА radv, NVIDIA GPUs рд╕рд╛рдареА NVK, Qualcomm GPUs рд╕рд╛рдареА tu, lavapipe рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рд░рд╛рд╕реНрдЯрд░рд╛рдпрдЭрд░ (lvp), рдЗрдореНрдпреБрд▓реЗрдЯрд░ рдореЛрдб (vn) рдЖрдгрд┐ v3dv (GPU рдмреНрд░реЙрдбрдХреЙрдо рд╡реНрд╣рд┐рдбреАрдУрд╕рд╛рдареА GPU рдмреНрд░реЙрдбрдХреЙрдорд╕рд╛рдареА рд╕рдорд░реНрдерди рдХрд░рддреЗ. 4+). Vulkan 1.0 рд╕рдорд░реНрдерди dzn (Direct3D 12 рдЪреНрдпрд╛ рд╢реАрд░реНрд╖рд╕реНрдерд╛рдиреА Vulkan рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА) рдЖрдгрд┐ panvk (ARM Mali GPU) рдбреНрд░рд╛рдпрд╡реНрд╣рд░реНрд╕рдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗ.

Mesa iris (Intel Gen 4.6+ GPUs), radeonsi (AMD), Crocus (рдЬреБрдиреЗ Intel Gen8-Gen4 GPUs), zink, llvmpipe, virgl (QEMU/KVM рд╕рд╛рдареА Virgil7D рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ GPU), рдлреНрд░реАрдбреНрд░реЗрдиреЛ рдбреНрд░рд╛рдпрд╡реНрд╣рд░реНрд╕рд╕рд╛рдареА рд╕рдВрдкреВрд░реНрдг OpenGL 3 рд╕рдорд░реНрдерди рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ. Qualcomm Adreno), d3d12 (DirectX 12 рд╡рд░ OpenGL рдХрд╛рд░реНрдп рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рд╕реНрддрд░) рдЖрдгрд┐ asahi (Apple M1 рдЖрдгрд┐ M2 рдЪрд┐рдкреНрд╕рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗрд▓реЗ AGX GPU). OpenGL 4.5 рд╕рдорд░реНрдерди AMD (r600) рдЖрдгрд┐ NVIDIA (nvc0) GPU рд╕рд╛рдареА рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ. OpenGL 3.3 рд╕рдорд░реНрдерди softpipe (рд╕реЙрдлреНрдЯрд╡реЗрдЕрд░ рд░рд╛рд╕реНрдЯрд░рд╛рдпрдЭрд░) рдЖрдгрд┐ nv50 (NVIDIA NV50) рдбреНрд░рд╛рдЗрд╡реНрд╣рд░реНрд╕рдордзреНрдпреЗ рдЖрд╣реЗ.

рдореБрдЦреНрдп рдирд╡рдХрд▓реНрдкрдирд╛:

  • v3dv рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ Raspberry Pi 1.3 рдЖрдгрд┐ Raspberry Pi 4 рдмреЛрд░реНрдбрд╡рд░ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд▒реНрдпрд╛ VideoCore GPU рд╕рд╛рдареА Vulkan 5 рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ API рд╕рд╛рдареА рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдкреБрд░рд╡рддреЛ.
  • рдирд╡реАрди Vulkan рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ gfxstream-vk рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рд╡реНрд╣рд▓реНрдХрди API рдЖрднрд╛рд╕реАрдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ Linux, Android рдЖрдгрд┐ Fuchsia рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЕрддрд┐рдереА рдкреНрд░рдгрд╛рд▓реАрдВрдордзреВрди рдпрд╛ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ API рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ. рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдЪрд╛ рд╡рд╛рдкрд░ Google рджреНрд╡рд╛рд░реЗ Android рдПрдореБрд▓реЗрдЯрд░, Fuchsia emulator, Android рдХреНрд▓рд╛рдЙрдб рд╕реЗрд╡рд╛ рдЖрдгрд┐ Android Automotive OS (AAOS) рдордзреНрдпреЗ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ.
  • рд╡рд▓реНрдХрди рдПрдХреНрд╕реНрдЯреЗрдВрд╢рди VK_PRESENT_MODE_FIFO_KHR рд╕рд╛рдареА рд╕рдорд░реНрдерди FIFO рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреНрдпрд╛ рд╡реЗрд▓рдБрдб-рдЖрдзрд╛рд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд▓реНрдХрди рдЧреНрд░рд╛рдлрд┐рдХрд▓ API рдЪреНрдпрд╛ рд╡рд┐рдВрдбреЛрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдорд╕рд╣ (WSI, Windowing System Integration) рдПрдХреАрдХрд░рдг рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗ рдЖрдЙрдЯрдкреБрдЯ рдкреВрд░реНрдг рд╣реЛрдгреНрдпрд╛рдЪреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ. рд╡реНрд╣рд░реНрдЯрд┐рдХрд▓ рд╕реНрдХреЕрдирд┐рдВрдЧ (vblank) рдЪреЗ рдХреЙрд▓рдмреЕрдХ рдХреЙрд▓ рд╡рд╛рдкрд░рдгреНрдпрд╛рдРрд╡рдЬреА рдкреНрд░рддреНрдпреЗрдХ рдирд╡реАрди рдлреНрд░реЗрдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддрдпрд╛рд░ рдЖрд╣реЗ, рдЬреЗ VSync рд╡рд╛рдкрд░рддрд╛рдирд╛ рдЙрдЪреНрдЪ GPU рд▓реЛрдбрдЪреА рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рддреЗ.
  • Xe2 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд Intel GPU рд╕рд╣ рд╕рд┐рд╕реНрдЯреАрдорд╡рд░, рдбреЗрдкреНрде рдмрдлрд░ (z-рдмрдлрд░) рдХреЙрдореНрдкреНрд░реЗрд╢рди рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рддрдкрдгреЗ рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ рдЬрд╛рддреЗ.
  • рдкрдБрдерд░ рд▓реЗрдХ рдкреНрд░реЛрд╕реЗрд╕рд░рдордзреНрдпреЗ рдЖрдврд│рд▓реЗрд▓реНрдпрд╛ Xe3 рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд Intel GPUs рд╕рд╛рдареА iris OpenGL рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ рдЖрдгрд┐ ANV Vulkan рдбреНрд░рд╛рдЗрд╡реНрд╣рд░рдиреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ.
  • Vulkan рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди NVK (NVIDIA) рдбреНрд░рд╛рдЗрд╡реНрд╣рд░рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ:
    • VK_EXT_descriptor_buffer
    • рд╡реНрд╣реАрдХреЗ_рдПрдХреНрд╕_рдкреЛрд╕реНрдЯ_рдбрд┐рдкреНрдЯреА_рдХрд╡реНрд╣рд░реЗрдЬ
    • VK_EXT_legacy_vertex_attributes
    • VK_KHR_рдореЗрдиреНрдЯреЗрдирдиреНрд╕7
    • VK_KHR_dynamic_rendering_local_read
    • VK_NV_compute_shader_derivatives
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_float_controls2
    • VK_EXT_host_image_copy (GPU рдЯреНрдпреБрд░рд┐рдВрдЧ+ рд╕рд╛рдареА)
    • VK_KHR_shader_quad_control
    • VK_KHR_fragment_shading_rate
    • VK_EXT_depth_clamp_zero_one
    • VK_EXT_device_generated_commands
  • Vulkan рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди RADV (AMD) рдбреНрд░рд╛рдЗрд╡реНрд╣рд░рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ:
    • VK_KHR_рд╡реНрд╣рд┐рдбрд┐рдУ_рджреЗрдЦрднрд╛рд▓1
    • VK_KHR_рдкрд╛рдЗрдкрд▓рд╛рдЗрди_рдмрд╛рдпрдирд░реА
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_float_controls2
    • VK_EXT_device_generated_commands
    • VK_KHR_shader_relaxed_extended_instruction
  • Vulkan рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди ANV рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ (Intel) рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.
    • VK_KHR_compute_shader_derivatives
    • VK_KHR_shader_relaxed_extended_instruction
    • VK_EXT_depth_clamp_control
  • hasvk рдбреНрд░рд╛рдЗрд╡реНрд╣рд░ (Intel Ivy Bridge, Haswell рдЖрдгрд┐ Broadwell) рдиреЗ Vulkan рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ рдЖрд╣реЗ:
    • VK_EXT_depth_clamp_control
    • VK_KHR_shader_relaxed_extended_instruction
  • рд╡рд▓реНрдХрди рд╡рд┐рд╕реНрддрд╛рд░ VK_KHR_shader_relaxed_extended_instruction рд╕рд╛рдареА рд╕рдорд░реНрдерди hk, tu, v3dv рдЖрдгрд┐ lvp рдбреНрд░рд╛рдЗрд╡реНрд╣рд░реНрд╕рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ.
  • рдирд╡реАрди OpenGL рд╡рд┐рд╕реНрддрд╛рд░рд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рдЬреЛрдбрд▓реЗ:
    • рд░реЗрдбрд┐рдУрдиреНрд╕реА рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреАрд▓ GL_KHR_shader_subgroup
    • рдЭрд┐рдВрдХ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_OVR_multiview
    • рдЭрд┐рдВрдХ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_OVR_multiview2
    • GL_ARB_draw_indirect to etnaviv/HALTI5+ рдбреНрд░рд╛рдЗрд╡реНрд╣рд░
    • etnaviv/HALTI2+ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_EXT_draw_buffers5
    • etnaviv/HALTI5+ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_ARB_draw_buffers_blend
    • etnaviv рдбреНрд░рд╛рдЗрд╡реНрд╣рд░рдордзреНрдпреЗ GL_ARB_framebuffer_no_attachments
    • рдкреЕрдирдлреНрд░реЙрд╕реНрдЯ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_ARB_timer_query
    • рдкреЕрдирдлреНрд░реЙрд╕реНрдЯ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рдордзреНрдпреЗ GL_EXT_disjoint_timer_query

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛