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

Submitted by release of a free implementation of the OpenGL and Vulkan APIs - Table 20.1.0. The first release of the Mesa 20.1.0 branch has an experimental status - after the final stabilization of the code, a stable version 20.1.1 will be released. In Mesa 20.1 implemented Full OpenGL 4.6 support for Intel (i965, iris drivers) and AMD (radeonsi) GPUs, OpenGL 4.5 support for AMD (r600) and NVIDIA (nvc0) 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:

  • Added by A layer for selecting the active device for the Vulkan API on multi-GPU systems with Vulkan support, similar to OpenGL's DRI_PRIME. The MESA_VK_DEVICE_SELECT environment variable is provided to select the active driver and GPU (if not set, DRI_PRIME is used).
  • i965 and iris drivers for Intel GPUs add support for chips expected next year based on new microarchitecture Rocket lake.
  • In the ANV Vulkan driver developed for the Intel GPU added optimization for chips based on the Icelake (Gen11) microarchitecture, which allows the use of pure colors when texturing. When tested in Dota2, the change reduced the number of color conversion operations by 95% and improved performance by 3.5%.
  • In the ANV Vulkan driver promoted efficiency of cache usage on systems with Intel Ivybridge and Haswell chips. Using the Vulkan compute tests from the Geekbench 5 set showed a 330% performance increase on Haswell GT3 hardware (an increase due to the fact that the cache was not previously used in some conditions).
  • The drivers for the Intel GPU (i965, iris) added "black hole" mode (OpenGL extension INTEL_blackhole_render), which disables all rendering operations transmitted by the GPU, but retains the processing of OpenGL operations.
  • For Intel graphics chips, vectorization support previously added for AMD chips has been ported NIR, an untyped intermediate representation (IR) of shaders, aimed at working at the lowest level, under the GLSL IR and Mesa's internal IR. On the practical side, due to better optimization of shaders, the change allowed to increase the performance of OpenGL and Vulkan in many games on systems with Intel GPUs. For example, in the game
    Rise of the Tomb Raider noted performance increase by 3%, and in Shadow of the Tomb Raider by 10%.

  • In the backend for compiling shaders "ACOβ€œ, which is being developed by Valve as an alternative to the LLVM shader compiler, support for the shaderInt9 type has been added for the GFX16+ GPU, which allows the use of 16-bit integers in shader code. For
    AMD Navi GPU (GFX10) secured use of NGG (Next-Gen Geometry) engines when working with vertex and tessellation shaders.

  • For AMD Navi 12 and Navi 14 GPUs is included support for DCC display mode (Delta Color Π‘ompression), which provides work with compressed color data when organizing screen display.
  • Added by experimental NIR support for classic Gallium3D R600 driver (AMD Radeon HD 2000-6000) with support for geometry, fragment, vertex and tessellation shaders.
  • The Vulkan RADV driver added A patch that improves the performance of Id Tech games on systems with AMD APUs by optimizing work with memory.
  • In the Panfrost driver implemented experimental support for OpenGL ES 3.0 and provided 3D rendering support for GPU Bifrost (Mali G31). An initial implementation of a shader compiler has been prepared that supports a set of internal instructions specific to the GPU Bifrost.
  • In the TURNIP Vulkan driver developed for the Qualcomm Adreno GPU, added support for geometry shaders and Adreno 650 chips.
  • In the Gallium3D driver LLVMpipe, which provides software rendering, appeared support for tessellation shaders.
  • Contributed great a portion optimizations in glthread (a multi-threaded implementation of OpenGL). After making the changes, Torcs racing simulator performance increased by 16% in the default configuration and by 40% with glthread enabled.
  • Added by option allow_draw_out_of_order (enabled via driconf) to enable optimizations to speed up out-of-order drawing operations specific to CAD. When the option is enabled in the Viewperf11 Catia test, an acceleration of 7% is observed.
  • Added new OpenGL extensions:
  • Added extensions to RADV Vulkan driver (for AMD cards):
  • Added extensions to ANV Vulkan driver (for Intel cards):

    Source: opennet.ru

Add a comment