The upcoming quarterly update to Mesa 3D Graphics Library, which brings the version to Mesa 19.3, is expected to pack a lot of benefits, including support for the latest Open Source OpenGL v4.6, and several new Vulkan extensions. The Mesa 19.3 update could land as soon as this week itself, and experts argue it is by far the biggest or most significant improvement before the current year ends. Linux desktop users have been eagerly awaiting the critical component additions to the Mesa 3D Graphics Library, as the update was severely challenged and hence delayed, due to ‘blocker’ bugs.
Mesa 19.3 To Arrive Before Christmas For Linux Desktop Users:
Mesa 19.3 may have taken a little longer than the previous Mesa 19.2 update owing to blocker bugs, but its arrival is considered quite important by desktop PC users who prefer Linux OS for gaming. The Mesa 19.3 is a big improvement in the Graphics Library for OpenGL / Vulkan driver implementations.
There are several feature additions and improvements, but Linux desktop users are eagerly awaiting the same simply because this quarterly Mesa3D update finally has OpenGL 4.6 for Intel. Moreover, the update also includes the initial Intel Gen12 / Tiger Lake support. In this update, Zink has been merged for OpenGL on top of Vulkan. The latest update should significantly benefit the new Raspberry Pi 4 owing to the improvements in the way V3D handles the OpenGL ES.
— Phoronix (@phoronix) December 10, 2019
The Mesa 19.3 update has added Radeon Vulkan ACO back-end, which should significantly improve gaming performance on Linux. Apart from these improvements, the latest update for the Mesa 3D Graphics Library includes several new Vulkan extensions supported on both the Intel and Radeon drivers. Below are some of the highlights in the official Changelog for the Mesa 19.3 update:
- OpenGL 4.6 support for Intel i965/Iris drivers now that SPIR-V support is in place.
- Various other non-core OpenGL extensions added to various drivers.
- A number of new Vulkan extensions supported by Intel ANV and Radeon RADV like KHR_shader_clock, KHR_shader_float_controls, SPIR-V 1.4 support, Vulkan Memory Model, shader_subgroup_ballot / shader_subgroup_vote, and more.
- Initial support for Intel Tiger Lake (Gen 12) graphics, initial kernel support meanwhile in Linux 5.4.
- The ACO shader compiler back-end for Radeon RADV is now present for GFX8 through GFX10 Navi hardware. RADV ACO can be enabled with the “RADV_PERFTEST=aco” environment variable.
- Better Intel Gallium3D driver performance to the point it can nearly replace the i965 driver once some lingering bugs are worked out. Mesa 20.0 is the planned stage for switching the default drivers for Broadwell hardware and newer.
- RadeonSI video decode improvements like 8K decode for HEVC/H.265 and VP9.
- Navi 14 support within the RadeonSI driver (RADV had support in 19.2).
- RADV secure compile support as a new feature being worked on by Valve.
- The SCons build system has been deprecated for non-Windows platforms with an effort of better embracing the Meson build system on Mesa.
- The AMD code supports using the new AMDGPU reset kernel interface.
- Zink was merged for providing basic OpenGL over Vulkan support within Gallium3D.
- TURNIP Vulkan driver improvements.
- Better AMD Radeon APU performance.
- Lima Gallium3D driver improvements along with continued work on Panfrost for open-source Mali graphics.
- Raspberry Pi 4 V3D is nearly handling OpenGL ES 3.1.
- Nouveau SPIR-V support in working towards eventual OpenCL support with Clover.
- A big Gallium3D NIR clean-up in nursing the RadeonSI driver towards eventually enabling NIR by default and in turn flipping on OpenGL 4.6 (pending in Mesa 20.0-devel but NIR isn’t yet turned on by default).
- Compute shaders for LLVMpipe and other enhancements to this software rasterizer.
- The Mesa shader disk cache now caters to modern 4+ core systems.
Here's my diff against void-packages: https://t.co/fMyNDfUcX4 I hope to get the kernel stuff into regular Void kernel once it's ready for drm-next, at least. The rest could potentially get solved with LLVM 9.0.1 and Mesa 19.3 updates, though dunno if LLVM 9.0.1 has all the fixes.
— Daniel Kolesa (@octaforge) December 8, 2019
Mesa 20.0 Includes Intel’s Gallium3D Driver To Build By Default
If the Mesa 19.3 is exciting, the next major update to the Mesa 3D Graphics Library is even more so. Intel plans to use their new Gallium3D OpenGL Linux driver by default in the next quarterly update, which could be Mesa 20.0. With Gallium3D OpenGL Linux driver included automatically, users need not select it manually.
— Phoronix (@phoronix) October 16, 2019
The next step for Intel could be to flip on the Gallium3D driver as the default run-time selection for supported hardware. This would allow for more testing ahead of Mesa 20.0 feature freeze. However, this should happen only at the end of the next month, which is January 2020. Moreover, the stable release could arrive at the end of February or March. Many experts, including Intel, hoped to change the default for Mesa 19.3 itself, but that has clearly not happened. Still, the additional time should ensure the elimination of functional or performance regressions.