Release of Mesa 20.2.0, a free implementation of OpenGL and Vulkan

Submitted by release of a free implementation of the OpenGL and Vulkan APIs - Table 20.2.0. In Mesa 20.2 implemented Full OpenGL 4.6 support for Intel (i965, iris drivers) and AMD (radeonsi) GPUs, OpenGL 4.5 support for AMD (r600), NVIDIA (nvc0) and llvmpipe GPUs, OpenGL 4.3 for virgl (virtual GPU Virgil3D for QEMU/KVM), as well as Vulkan 1.2 support for Intel and AMD cards.

Among changes:

  • In the driver lvmpipe, designed for software rendering, provides support for OpenGL 4.5.
  • The RADV Vulkan driver (for AMD cards) uses the Shader Compiler by default "ACO", which is being developed by Valve as an alternative to the LLVM shader compiler. ACO is written in C++, developed with JIT-compilation in mind, and aims to provide code generation that is as optimal as possible for game application shaders, as well as achieving very high compilation speeds.
  • Added initial support for AMD Navi 21 (Navy Flounder) and Navi 22 (Sienna Cichlid) GPUs.
  • Improved support for chips based on microarchitecture in Intel GPU drivers Rocket lake ΠΈ added initial support for discrete cards Intel Xe DG1.
  • Expanded capabilities of the Gallium3D driver Zinc, which implements the OpenGL API on top of Vulkan. Zink allows you to get hardware accelerated OpenGL if you have drivers in your system that are limited to supporting only the Vulkan API.
  • The Gallium3D driver Nouveau NVC0 uses HMM (heterogeneous memory management) to support OpenCL SVM (Shared Virtual Memory).
  • In the driver panfrost stabilized 3D rendering support for GPU Midgard (Mali-T6xx, Mali-T7xx, Mali-T8xx).
  • RadeonSI includes improvements related to GPU virtualization.
  • Added support for TGSI (Tungsten Graphics Shader Infrastructure) intermediate representation disk caching.
  • Added new OpenGL extensions:
    • GL_ARB_compute_variable_group_size for Intel Iris.
    • GL_ARB_gl_spirv for Nouveau nvc0.
    • GL_NV_half_float for Nouveau nvc0.
    • GL_NV_copy_depth_to_color for Nouveau nvc0.
    • GL_ARB_spirv_extensions for Nouveau nvc0.
    • GL_EXT_shader_group_vote for llvmpipe.
    • GL_ARB_gpu_shader5 for llvmpipe.
    • GL_ARB_post_depth_coverage for llvmpipe.
    • GL_EXT_texture_shadow_lod for llvmpipe.
  • Added support for the EGL extension EGL_KHR_swap_buffers_with_damage (for X11 DRI3), as well as the GLX extensions GLX_EXT_swap_control (DRI2, DRI3) and GLX_EXT_swap_control_tear (DRI3).
  • Added extensions to RADV Vulkan driver (for AMD cards):
    • VK_EXT_4444_formats
    • VK_KHR_memory_model
    • VK_AMD_texture_gather_bias_lod
    • VK_AMD_gpu_shader_half_float
    • VK_AMD_gpu_shader_int16
    • VK_EXT_extended_dynamic_state
    • 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_type
    • VK_KHR_shader_subgroup_extended_types
  • Added extensions to ANV Vulkan driver (for Intel cards):
    • VK_EXT_image_robustness
    • VK_EXT_shader_atomic_float
    • VK_EXT_4444_formats
    • VK_EXT_extended_dynamic_state
    • VK_EXT_private_data
    • VK_EXT_custom_border_color
    • VK_EXT_pipeline_creation_cache_control

Source: opennet.ru

Add a comment