Tag Archives: Vulkan

Mesa Radeon Vulkan Driver Sees ~30% Performance Boost For APUs


Mesa’s RADV Radeon Vulkan driver just saw a big performance optimization land to benefit APUs like Raven Ridge and Picasso, simply systems with no dedicated video memory.

The change by Feral’s Alex Smith puts the uncached GTT type at a higher index than the visible vRAM type for these configurations without dedicated vRAM, namely APUs.

This fix boosted the average frame-rate for the Rise of the Tomb Raider Linux port by around 30% and other Feral Vulkan-powered Linux games as well as other titles.

The good news is due to the significant boost to performance and its high exposure, this “fix” to the RADV driver is marked as a candidate for back-porting to the Mesa 19.2 series rather than needing to wait until next quarter’s Mesa 19.3.

Or if you are building your own Mesa, it’s just a dozen line patch yielding the double digit Vulkan driver performance improvements.

NVIDIA 435.17 Linux Beta Driver Adds Vulkan + OpenGL PRIME Render Offload


NVIDIA this morning introduced their 435 Linux driver series currently in beta form with the release of the 435.17 Linux build. With this new driver comes finally the best PRIME/multi-GPU support they have presented to date.

The NVIDIA 435.17 driver has a new PRIME render offload implementation supported for Vulkan and OpenGL (with GLX). This PRIME offloading is about using one GPU for display but having the actual rendering be done on a secondary GPU, as is common with many of today’s high-end notebooks that have Intel integrated graphics paired with a discrete NVIDIA GPU.

For the NVIDIA PRIME render offload support, they require some recent commits to the X.Org Server that sadly isn’t in any released version but will be there for the eventual xorg-server 1.21 release. In the meantime, NVIDIA is providing an Ubuntu PPA with a patched X.Org Server build.

This offload support also requires some fiddling to the xorg.conf configuration and environment variables for activation, but after that should be much better PRIME support than the previous options.

The NVIDIA 435.17 Linux driver also has experimental support for run-time D3 power management for Turing notebook GPUs, a variety of bug fixes, support for changing the Digital Vibrance on Turing hardware, and drops non-GLVND OpenGL support.

More details on the NVIDIA 435.17 Linux beta driver via the NVIDIA DevTalk.

Mesa 19.1.4: Intel Vulkan Fixes For Older Generations, Max Payne 3 Issue Fixed For RADV


If all goes well Mesa 19.1.4 will be released on Tuesday as the newest stable point release to this collection of OpenGL/Vulkan drivers for Linux systems. Mesa 19.1.4 is bringing around four dozen patches that accumulated over the later half of July and it’s particularly heavy on Intel ANV and Radeon RADV Vulkan driver fixes.

Mesa 19.1.4 will no longer advertise 24/48-bit format support for Vulkan on Ivybridge (the oldest Intel Gen graphics supported by the driver) and it also stops advertising R8G8B8_UNORM_SRGB on Haswell. Vulkan transform feedback support was also disabled for Intel Gen7 Ivybridge/Haswell graphics due to being buggy there / not properly supported. That should clear up some issues for those using these buggy/unsupported bits on these older generations of Intel graphics.

On the RADV driver front, there is a fix for improper hair rendering that affects at least Max Payne 3.

The Radeon UVD/VCN code meanwhile has picked up rate control for HEVC encoding, a metadata size fix for Vega/GFX9 and newer, a number of core Mesa EGL fixes, and various other fixes throughout Mesa’s expansive code-base.

Those interested in the features coming for Mesa 19.1.4 can find the complete list via the RC announcement.

Mesa 19.2 as the Q3’2019 feature release meanwhile will go into feature freeze this coming week and should debut as stable at the end of August or early September.

Radeon RADV Vulkan Driver Adds Navi Wave32 Support For Compute Shaders


Thanks to Valve’s open-source driver developer Samuel Pitoiset, there is now experimental support for using Wave32 support on Navi graphics cards for compute shaders.

Navi/RDNA brings support for single-cycle issue Wave32 execution as an alternative to Wave64 for better efficiency. Just over a week ago the initial patches landed adding Wave32 support to RadeonSI for their OpenGL driver while now Samuel has tackled the initial implementation in the RADV driver.

This Wave32 support is for compute shaders and as of writing isn’t enabled by default. The code is queued into Mesa 19.2-devel Git but requires setting the RADV_PERFTEST=cswave32 environment variable for enabling the support on new Radeon RX 5700 / RX 5700 XT graphics cards. Wave32 currently isn’t hooked in for any other shader types.

Samuel also submitted a number of fixes today for this Navi code in RADV via radv/gfx10.

Mesa 19.2 feature development is ending next week while fixes are still permitted to land. Mesa 19.2.0 should debut as stable in late August or early September while feature development then shifts to Mesa 19.3 for debut at the end of November.

Mesa 19.1.3 Led By Fixes For Intel & Radeon Vulkan Drivers


If you are sticking to stable versions of Mesa, the Mesa 19.1.3 point release is out today as the latest and greatest version of this collection of open-source graphics drivers.

Changes for Mesa 19.1.3 are led by the Intel “ANV” and Radeon “RADV” Vulkan drivers. Among those Vulkan driver fixes are taking care of Android dependencies for ANV, external buffer properties fixes for Intel, a crash in shader tracing for RADV, and various other fixes.

Some of the other Mesa 19.1.3 changes include NIR and SPIR-V fixes, a crash fix in Mesa’s Vulkan overlay, a bindless texture hang fix for RadeonSI, and addressing a memory leak with CopyPixels.

The complete list of Mesa 19.1.3 changes can be found via Mesa-dev.

Meanwhile the next Mesa feature release is version 19.2.0. Mesa 19.2 will go into a feature freeze with its first release candidate around 6 August and see weekly RCs until it’s ready to ship. Currently it’s looking like Mesa 19.2.0 will debut at the end of August or more than likely slip into early September.