NVIDIA Resizable BAR Performance - A Big Boost For Some Linux Games
Back in March NVIDIA announced they would be supporting the GeForce RTX 30 series with Resizable BAR support via a video BIOS update for supported systems. Recently I've been looking at the performance of a GeForce RTX 3080 once flashing the graphics card under Linux with Resizable BAR support and the performance is quite compelling for Vulkan-based games where this functionality is working.
Like with the AMD Smart Access Memory / Resizable BAR support, it requires a compatible CPU and motherboard and having the support enabled within the system BIOS. There is also graphics driver support required for Resizable BAR. NVIDIA hasn't talked much about the Linux driver for Resizable BAR but in fact the support is there with the latest stable driver series, assuming your video BIOS has the support available. It is important to note though the Resizable BAR support is implemented just for their Vulkan driver and not for OpenGL.
NVIDIA Resizable BAR testing...
NVIDIA published this Windows-focused guide back in March outlining the Resizable BAR support and details for those interested. NVIDIA has made available vBIOS updates to flash under Windows while there wasn't any Linux tool available which is why we haven't focused much time on the feature on the NVIDIA front.
However, we were recently supplied with a Linux binary that can flash the GeForce RTX 3080 Founder's Edition under Linux with a supported vBIOS and thus rolled into this testing. Hopefully NVIDIA will be releasing the Linux tool for their RTX 30 Founder's Edition cards in due course but so far we haven't received any confirmation on the timing or their plans.
Confirming the NVIDIA Linux Resizable BAR support status can be determined from the "nvidia-smi -q -x" and looking at the "bar1_memory_usage" node and seeing if the total reported memory is greater than 256MiB.
This initial round of GeForce RTX 3080 Resizable BAR testing was carried out on an AMD Ryzen 9 5900X system with ASUS ROG CROSSHAIR VIII HERO motherboard with its latest sBIOS. The testing was done with Resizable BAR disabled from the BIOS and then again re-enabled, with both runs using the same latest vBIOS release. NVIDIA 465.31 as the latest public proprietary driver was used for testing.