Not getting full bandwidth PCIe transfers

I installed a GeForce RTX 3070 (ZOTAC Gaming Twin Edge OC) card on a motherboard that supports Gen 4 PCIe speeds and found that it was running much slower. “sudo lspci -vv” shows:
LnkSta: Speed 2.5GT/s (downgraded), Width x16 (ok)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-

This was on a Ubuntu 22.04.1 LTS install.
I tried all of the available proprietary drivers which included unadorned and server and open variants of 470, 510, 515, and 520. They all have the same speed except the two that didn’t work at all (515-open & 520-open).

I was suspicious of the hardware, but I found that the xserver-xorg-video-nouveau driver does support Gen 4 speeds and full width. Unfortunately, this driver has a different issue where the screen is mostly yellow.

I also tried the nvidia driver included with Windows 10 and found that it runs at full speed (though only uses 1 lane).

So, my question is, does anyone know a way to get full bandwidth performance on a GeForce RTX 3070 card in Ubuntu?

That’s only a power saving feature of the driver. While the gpu is idle, the driver will clock down the pcie connection to gen 1. Just start nvidia-settings gui, powermizer pane, put some load on the gpu and you should see that it switches to gen 4 speeds.

Thanks! I did as you suggested and it jumped right up to full speed.