Lenovo p15 Gen1 nvidia problems


I own a Lenovo P15 Gen 1 with Xeon, 4k internal display and Nvidia Quadro RTX 4000 graphics card. I installed the newest Fedora Silverblue 34 release last week and encountered some problems. I installed the nvidia drivers like described here so that the nouveau driver is disabled: Howto/NVIDIA - RPM Fusion. I need to use the nvidia graphic cards because otherwise my external 5k display, connected via Thunderbolt 3, wouldn`t work. I had similar problems using Workstation in the past, so it is not Silverblue specific IMO.

I used it with BIOS setting hybrid graphics during my workday and noticed, that the UI is sluggish. For example, if you press a key there is a slight noticeable delay before the result can be seen in the texteditor. The nvidia settings app displays that the nvidia graphic cards runs in adaptive performance mode 0 (3 is maximum) and sometimes in mode 1 if I use Zoom. So the performace mode is really “adaptive”. That’s good because the fans are as quit as if I use WSL2 / Windows (which is my daily driver currently). top displays that a X.org process needs about 30% CPU.

I read that this X.org process problem can be solved by changing the bios setting to discrete graphics. So I changed the BIOS setting from hybrid to discrete. After that the UI was not sluggish anymore. The keystrokes registered as fast as expected, and as fast as if I develop in the same editor in WSL2 / Windows. The disadvantage is that the fans are very loud. The reason seems to be that the graphic card is always in the highest performance mode (3). So the GPU is not adaptive anymore. The X.org process needs fewer resources <5%).

Using Wayland is not an option yet. After setting the BIOS to discrete graphics I was able to switch between Wayland and X.org (before only the X.org options was available), but is was not usable. Is was very slow. The reason might be that the editor I use is written in Java and so uses XWayland. XWayland does not seem to support hardware acceleration yet (even though I read it is about to be supported).

I read that it is possible to set a maximum performance level. So I tried to set a maximum performance level of 1 because I hoped that the fans are ok than. But it was not successful (but maybe it did it just wrong).

Any suggestions?


P.S.: I posted this question in the lenovo forum too: English Community-Lenovo Community