Mesa 20.0.0 Is Released
Mesa 20 is a big release. It has Vulkan 1.2 support for AMD and Intel graphics cards, including older ones, as well as many Vulkan improvements. The new Iris OpenGL graphics driver for Intel graphics cards has become the default for Intel gen8+ graphics chips. AMD users can enjoy a new experimental, and still optional, ACO GPU program compiler from Valve.
Mesa 20 has full support for the Vulkan 1.2 graphics API.
There were very few changes between Mesa 20.0.0 rc2 and the -rc3 release and the same is true for the final release. The differences between Mesa 20.0.0-rc3 and Mesa 20.0.0 are limited to less than a handful of Intel gen12+ graphics cards. The changes between Mesa 19.3 and Mesa 20 are, on the other hand, significant.
Mesa 20 supports the Vulkan 1.2 graphics API on Intel gen7+ (Haswell and newer) graphics cards as well as AMD GFX6+ (Radeon HD 77xx and newer) graphics cards. Adding support for Vulkan 1.2 was not a very huge undertaking. Mesa 19.2.x lists Vulkan 1.1.2 as the supported version but most of the extensions added to the Vulkan 1.2 specification are there as optional extensions. Vulkan 1.2 made previously optional extensions mandated parts of the new core specification. Mesa has had those extensions for quite some time, adding Vulakn 1.2 support to Mesa was almost as simple as changing the Vulkan version number.
Intel graphics users with gen8+ (all not ancient) graphics chips will get the new Intel Iris OpenGL graphics driver as a default as of Mesa 20. This new OpenGL driver differs from the i965 driver in several key ways. It uses the standard gallium Mesa interface instead of the special Intel interface the i965 interface. This means that standard Mesa features like the standard gallium-bsaed OpenGL heads up display AMD users have enjoyed now works with OpenGL applications running on Intel hardware. Intel Iris is also between marginally and slightly faster depending on the application.
An old GFX6 series AMD HD7850 graphics card. Mesa 20 has Vulkan 1.2 suport for this rather old AMD card as long as you use the
amdgpu kernel driver. You will lose hardware video decoding if you use that driver. You can't have both.
AMD users with very old hardware should note that you have to use the
amdgpu kernel driver to get Vulkan working with older cards. The Mesa
RADV Vulkan driver for AMD graphics cards will not work with the
radeon kernel module. Using the
amdgpu on older cards will make the Mesa RADV driver work so you can play Vulkan games but hardware accelerated video decoding won't. That will work with the
radeon kernel driver but Vulkan won't. You can't have both.
Mesa 20 has a new optional Vulkan GPU program ("shader") compiler for AMD GPUs from Valve called ACO. It can be enabled by setting the environmental variable
RADV_PERFTEST=aco. Enabling it will give you the informative warning
WARNING: Experimental compiler backend enabled. Here be dragons! Incorrect rendering, GPU hangs and/or resets are likely
when you run Vulkan programs like vkmark. Dragons or not, the ACO compiler back-end seems just fine as of Mesa 20 and it works great with Steam games like Dota 2 even though there be dragons. This does not mean you should enable it and expect a problem-free experience. It looks fine and it seems to work fine with everything we tested. Use it at your own risk.
Mesa release manager Dylan Baker had this to say about the release:
"I'd like to announce mesa 20.0.0 as available for download immediately. I'm very pleased that we could get all of the issues blocking the release nailed down quickly and make a release on time for once!
This is a .0 release, and you may want to continue to to track 19.3.x until 20.0.1 comes out in two weeks. 19.3.5 is planned to be the final 19.3 release and is planned for next Wednesday."
The source for Mesa 20 can be acquired from mesa.freedesktop.org/archive. Your favorite distribution will likely have it available within a week if your distribution is a "Long Term Support" release. LTS distributions will typically stick with the major Mesa version they ship with for the duration of their life-cycle.