How exactly does Nvidia optimus work on Fedora?

Hello everyone. I have some questions I need to answer before I go purchase my new laptop. I understand that this is not the specific support forum so if need be I’ll remove this post.

Basically, I’ve been looking for a new laptop to purchase for college. Many of these machines have Nvidia dedicated graphics cards, which I believe have some quirks behind them. Specifically quirks with Wayland and Nvidia Optimus.

My understanding is the Fedora 33 and above uses Prime render offloaded by default when using an Nvidia GPU with drivers from RPM Fusion. This process should be set up by default when I install the drivers from RPM Fusion and would allow me to easily switch between the different GPUs by either launching them with
from the terminal or right-click and select launch with dGPU from the app context menu in Gnome. Is this correct? Will additional PGU driver setup not be necessary? And will I be able to launch an app with the dGPU by right-clicking it?

Additionally, the Prime render offloader constantly powers both the low-powered iGPU and the power-hungry dGPU, which may reduce battery life. On Ubuntu or Arch, I often had the option to completely power-off the Nvidia dGPU, followed by a re-login, to save battery life even further(or only use the dGPU for better performance). Is such a feature available for Fedora as well?

Thank you all in advance for helping me with this issue. I’ve never tried nvida on Linux before so I just want to make sure I can get it setup.

1 Like

Fedora uses gnome similar to ubuntu.
Installing the nvidia drivers from rpmfusion leaves the nvidia gpu as secondary and most apps will run fine on the primary gpu. When you want the extra capabilities of the nvidia gpu all you do is (as you already said) right click on the app and select the gpu to use…

Thank you for replying! I believe that even Ubuntu has the option to completely disable the dGPU for more battery saving. Is such a feature not available?

Since the eGPU is hardware it is always powered, simply not used. No OS can reduce the power demand below that.

If no display outputs are connected to dGPU, it can be disabled in BIOS (not always available option) or not powered-up (PCI-e device). Blacklisting driver is probably one of steps, I don’t know what else Arch and Ubuntu do.

Hmm. With this project GitHub - Askannz/optimus-manager: A Linux program to handle GPU switching on Optimus laptops. on Arch, it supposedly completely disables the nVidia GPU when not in use.

Yep, but disabled and powered off are two entirely different things for items that are integrated into the motherboard. A system that has the dual gpu config can AFAIK only have one of the gpus active for one task. The one that is not in use is (pick your choice): disabled, idle, unused, inactive, etc. Regardless of software, and even if the driver is not loaded, the inactive gpu is still drawing standby power since the motherboard is powered.

In fact, that link to optimus-manager says it uses the nvidia gpu full time while relaying the desktop thru the intel/amd gpu to the screen. It does not claim to power off or disable either gpu.

optimus-manager provides a workaround to this problem by allowing you to run your whole desktop session on the Nvidia GPU, while the Intel/AMD GPU only acts as a "relay" between the Nvidia GPU and your screen.

1 Like

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.