ืฉื—ืจื•ืจ ืฉืœ Mesa 20.2.0, ื™ื™ืฉื•ื ื—ื™ื ื ืฉืœ OpenGL ื•-Vulkan

ืฉื”ื•ื’ืฉ ืขืœ ื™ื“ื™ ืฉื—ืจื•ืจ ื™ื™ืฉื•ื ื—ื™ื ื ืฉืœ OpenGL ื•-Vulkan API - ืžืกื” 20.2.0. ื‘ืžืกื” 20.2 ืžื•ื˜ืžืข ืชืžื™ื›ื” ืžืœืื” ื‘-OpenGL 4.6 ืขื‘ื•ืจ GPUs Intel (i965, iris) ื•-AMD (radeonsi), ืชืžื™ื›ื” ื‘-OpenGL 4.5 ืขื‘ื•ืจ AMD (r600), NVIDIA (nvc0) ื•-llvmpipe GPUs, OpenGL 4.3 ืขื‘ื•ืจ virgl (GPU ื•ื™ืจื˜ื•ืืœื™) Virgil3D ืขื‘ื•ืจ QEMU/KVM), ื›ืžื• ื’ื ืชืžื™ื›ื” ื‘-Vulkan 1.2 ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ Intel ื•-AMD.

ื‘ื™ืŸ ืฉื™ื ื•ื™ื™ื:

  • ื‘ื ื”ื’ lvmpipe, ื”ืžื™ื•ืขื“ ืœืขื™ื‘ื•ื“ ืชื•ื›ื ื”, ืชื•ืžืš ื‘-OpenGL 4.5.
  • ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ RADV Vulkan (ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ AMD) ืžืฉืชืžืฉ ื‘ืžื”ื“ืจ ื”ืฆืœืœื” ื›ื‘ืจื™ืจืช ืžื—ื“ืœ "ACO", ืฉืžืคื•ืชื— ืขืœ ื™ื“ื™ Valve ื›ื—ืœื•ืคื” ืœืžื”ื“ืจ ื”ื”ืฆืœืœื” LLVM. ACO ื›ืชื•ื‘ ื‘-C++, ืชื•ื›ื ืŸ ืขื ืžื—ืฉื‘ื” ืขืœ ืงื•ืžืคื™ืœืฆื™ื” ืฉืœ JIT, ื•ืžื˜ืจืชื• ืœืกืคืง ื™ืฆื™ืจืช ืงื•ื“ ืื•ืคื˜ื™ืžืœื™ืช ื›ื›ืœ ื”ืืคืฉืจ ืขื‘ื•ืจ ื”ืฆืœืœื•ืช ืžืฉื—ืงื™ื, ื›ืžื• ื’ื ื”ืฉื’ืช ืžื”ื™ืจื•ื™ื•ืช ืงื•ืžืคื™ืœืฆื™ื” ื’ื‘ื•ื”ื•ืช ืžืื•ื“.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ืจืืฉื•ื ื™ืช ืขื‘ื•ืจ GPUs ืฉืœ AMD Navi 21 (Navy Flounder) ื•-Navi 22 (Sienna Cichlid).
  • ืžื ื”ืœื™ ื”ืชืงื ื™ื ืฉืœ Intel GPU ืฉื™ืคืจื• ืชืžื™ื›ื” ื‘ืฉื‘ื‘ื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ ืžื™ืงืจื•-ืืจื›ื™ื˜ืงื˜ื•ืจื” ืื’ื ื”ืจืงื˜ื•ืช ะธ ื”ื•ืกื™ืฃ ืชืžื™ื›ื” ืจืืฉื•ื ื™ืช ื‘ื›ืจื˜ื™ืกื™ื ื“ื™ืกืงืจื˜ื™ื™ื Intel Xe DG1.
  • ื”ื™ื›ื•ืœื•ืช ืฉืœ ืžื ื”ืœ ื”ื”ืชืงืŸ Gallium3D ื”ื•ืจื—ื‘ื• ืื‘ืฅ, ื”ืžื™ื™ืฉืžืช ืืช OpenGL API ืขืœ ื’ื‘ื™ Vulkan. Zink ืžืืคืฉืจ ืœืš ืœืงื‘ืœ OpenGL ืžื•ืืฅ ื‘ื—ื•ืžืจื” ืื ืœืžืขืจื›ืช ื™ืฉ ืžื ื”ืœื™ ื”ืชืงื ื™ื ืžื•ื’ื‘ืœื™ื ืœืชืžื™ื›ื” ื‘-Vulkan API ื‘ืœื‘ื“.
  • ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ Gallium3D Nouveau NVC0 ืžืฉืชืžืฉ ื‘-HMM (ื ื™ื”ื•ืœ ื–ื™ื›ืจื•ืŸ ื”ื˜ืจื•ื’ื ื™) ืœืชืžื™ื›ื” OpenCL SVM (ื–ื™ื›ืจื•ืŸ ื•ื™ืจื˜ื•ืืœื™ ืžืฉื•ืชืฃ).
  • ื‘ื ื”ื’ ืคื ืคืจื•ืกื˜ ื”ืชืžื™ื›ื” ื‘ืขื™ื‘ื•ื“ ืชืœืช ืžื™ืžื“ ืขื‘ื•ืจ ืžืขื‘ื“ื™ Midgard GPU (Mali-T3xx, Mali-T6xx, Mali-T7xx) ื”ืชื™ื™ืฆื‘ื”.
  • RadeonSI ื›ื•ืœืœ ืฉื™ืคื•ืจื™ื ื”ืงืฉื•ืจื™ื ืœื•ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ืฉืœ GPU.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืฉืžื™ืจืช ื“ื™ืกืง ื‘ืžื˜ืžื•ืŸ ืฉืœ ื™ื™ืฆื•ื’ ื”ื‘ื™ื ื™ื™ื TGSI (Tungsten Graphics Shader Infrastructure).
  • ื ื•ืกืคื• ืชื•ืกืคื™ OpenGL ื—ื“ืฉื™ื:
    • 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).
  • ื ื•ืกืคื• ื”ืจื—ื‘ื•ืช ืœืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ RADV Vulkan (ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ AMD):
    • VK_EXT_4444_ ืคื•ืจืžื˜ื™ื
    • VK_KHR_memory_model
    • VK_AMD_texture_gather_bias_lod
    • VK_AMD_gpu_shader_half_float
    • VK_AMD_gpu_shader_int16
    • VK_EXT_ ืžืฆื‘ ืžื•ืจื—ื‘_ื“ื™ื ืžื™
    • VK_EXT_image_robustness
    • VK_EXT_private_data
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control
    • VK_EXT_shader_demote_to_helper_invocation
    • VK_EXT_subgroup_size_control
    • ืกื•ื’ ืžืฉืชืžืฉ VK_GOOGLE_user
    • VK_KHR_shader_subgroup_typed_types
  • ื ื•ืกืคื• ื”ืจื—ื‘ื•ืช ืœืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ ANV Vulkan (ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ ืื™ื ื˜ืœ):
    • VK_EXT_image_robustness
    • VK_EXT_shader_atomic_float
    • VK_EXT_4444_ ืคื•ืจืžื˜ื™ื
    • VK_EXT_ ืžืฆื‘ ืžื•ืจื—ื‘_ื“ื™ื ืžื™
    • VK_EXT_private_data
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”