Tag Archives: NVIDIAs

DXVK-NVAPI 0.3 Released For Being Able To Expose More Of NVIDIA’s Public API Within Steam Play


A new release is now available of DXVK-NVAPI, the currently separate portion from DXVK that provides an experimental implementation of NVIDIA’s NVAPI for Direct3D 11 games using this public NVIDIA driver API.

NVAPI is NVIDIA’s API for offering publicly accessible SDK interfaces around NVIDIA GPU topology, driver management, frame rendering control, GPU overclocking, and a variety of other interfaces not available under other industry standard APIs or for other NVIDIA-specific feature controls. Some Direct3D games make use of NVAPI for NVIDIA features and thus DXVK-NVAPI is about supporting the API with DXVK to properly handle those games and features running within Valve’s Steam Play.

So far DXVK-NVAPI exposes some features that can help some NVIDIA-optimized games with better performance by up to a percent or two while also providing more detailed topology / system information through the NVIDIA API. DXVK-NVAPI though is just for interfacing with the NVIDIA driver API and doesn’t support any conversions to any other graphics driver vendor interfaces or the like.

DXVK-NVAPI 0.3 updates the NVAPI header files against their state in the NVIDIA 465 driver series and also adds more supported methods for querying GPU system information.

DXVK-NVAPI 0.3 can be downloaded from GitHub. DXVK-NVAPI will likely be of increased importance with new Steam Play features coming around such as DLSS for Steam Play.

Linux Kernel Seeing Patches For NVIDIA’s Proprietary Tegra Partition Table

As an obstacle for upstreaming some particularly older NVIDIA Tegra devices (namely those running Android) is that they have GPT entry at the wrong location or lacking at all for boot support. That missing or botched GPT support is because those older devices make use of a NVIDIA proprietary/closed-source table format. As such, support for this proprietary NVIDIA Tegra Partition Table is being worked on for the Linux kernel to provide better upstream kernel support on these consumer devices.

NVIDIA Tegra devices primarily rely on a special partition table format for their internal storage while some also support traditional GPT partitions.

[Source: Phoronix]

Valve’s ACO Helps The Radeon RX 5600 XT Compete With NVIDIA’s RTX 2060


As shown yesterday the new video BIOS of the Radeon RX 5600 XT paired with the corrected SMC firmware on Linux yields impressive performance improvements that — similar to Windows — allows the card to compete better with NVIDIA’s GeForce RTX 2060. For Linux users, activating the Valve-funded ACO compiler back-end for the Radeon “RADV” Vulkan driver helps turn up the competition even more.

I’ll have out complete RADV + ACO benchmarks shortly, but here are some initial findings so far when doing a third run of the RX 5600 XT that in addition to having the revised vBIOS in working order on Linux is with RADV_PERFTEST=aco set for enabling the ACO compiler back-end with RADV rather than the default AMDGPU LLVM back-end.

Tests were with Mesa 20.0 + Linux 5.5. Given the short turnaround time, ACO on the RX 5600 XT is being looked at while the other Radeon cards tested are at their default (non-ACO) configuration up against NVIDIA’s latest driver.

Shadow of the Tomb Raider with the revised vBIOS and enabling ACO now allowed the RX 5600 XT to come out just ahead of the GeForce RTX 2060! This also put the RX 5600 XT faster than the RX 5700, which was running without ACO and would have seen better results too on ACO, as we continue to show in our ACO vs. AMDGPU LLVM benchmarks.

Enabling ACO on the RX 5600 XT with Strange Brigade at medium quality settings boosted the FPS by 5%.

Or compared to the RX 5600 XT results with the original vBIOS, the video BIOS upgrade and switching to Valve ACO has boosted the RX 5600 XT performance by 16% for Strange Brigade with the ultra quality settings.

More ACO tests coming up shortly with the Mesa 20.0 feature freeze happening next week making for interesting tests on the roadmap.

NVIDIA’s Graphics Driver Will Run Into Problems With Linux 5.3 On IBM POWER


For those using the NVIDIA proprietary graphics driver on an IBM POWER system, it could be a while before seeing Linux 5.3+ kernel support. Upstream has removed code depended upon by the NVIDIA binary driver for supporting the POWER architecture and as is the case they don’t care that it will break NVIDIA driver support since it’s binary/out-of-tree.

The POWER changes for Linux 5.3 remove NPU DMA code. In the pull request they do acknowledge this DMA code is “used by the out-of-tree Nvidia driver, as well as some other functions only used by drivers that haven’t (yet?) made it upstream.”

The patch removing the NPU DMA code by Linux kernel veteran Christoph Hellwig does acknowledge this basically reverts the POWER support for NVIDIA NVLink GPUs. The code is being dropped since it’s no longer being used by the in-tree kernel code and thus a burden when it comes to maintaining the upstream DMA code.

IBM developer Alexey Kardashevskiy did warn that this particular code is “heavily” used by NVIDIA’s graphics driver. Hellwig responded though that “Not by the [driver / code] that actually exists in the kernel tree, so it simply doesn’t matter.

This isn’t just a function or two being removed but amounts to 1,280 lines of code now stripped out of the kernel that was used by the NVIDIA binary driver on POWER. The NVIDIA POWER support will now break on Linux 5.3 but hopefully NVIDIA will be able to come up with a timely solution to fix their driver on 5.3 and newer.

Ubuntu 19.10 To Bundle NVIDIA’s Proprietary Driver Packages As Part Of Its ISO


For Ubuntu 19.10 the developers are adding the NVIDIA driver packages onto the ISO. The NVIDIA binary drivers won’t be activated by default, but will be present on the install media to make it easier to enable post-install.

The open-source NVIDIA “Nouveau” drivers will remain the default for NVIDIA graphics on new Ubuntu installations, but this change is positioning the mainline and legacy NVIDIA proprietary drivers onto the Ubuntu ISO so that they can be easily obtained locally post-install. The main driver here is allowing users to enable the NVIDIA proprietary graphics on Ubuntu even if you don’t have an Internet connection. NVIDIA has already okay’ed the distribution of their driver packages with the Ubuntu ISO.

On the downside, adding the NVIDIA 390 and 418 drivers to the ISO pool has inflated the size of Ubuntu Eoan by 114MB. The overall Ubuntu x86_64 ISO size is now up to around 2.1GB.

This NVIDIA plan for Ubuntu 19.10 “Eoan” was firmed up this week via this Launchpad thread.