bayasdev / envycontrol

Easy GPU switching for Nvidia Optimus laptops under Linux
MIT License
1.26k stars 61 forks source link

[BUG] Fans spin constantly at 100% speed when running graphics-intensive applications on Fedora 39 #148

Closed sid3425 closed 6 months ago

sid3425 commented 9 months ago

Describe the bug After setting my Nvidia GPU to hybrid graphics mode(AMD CPU+Nvidia GPU), my laptop's fans tend to spin constantly at maximum speed when running graphically intensive applications, particularly games and Davinci Resolve(the free version) specifically on Fedora 39 with the Nvidia drivers installed, while it does not happen on other distros. The games run were Cyberpunk 2077, Red Dead Redemption 2, DOOM Eternal, GTA 4 and Yakuza 0(The former three are graphically intensive but my GPU has enough cooling to run those games smoothly but does not require full fan speed, but the latter two are not much intensive however the fans spin at 100% speed irrespective of the load). My CPU is an AMD Ryzen 5 5600H and GPU is an Nvidia GTX 1650

To Reproduce

  1. Set graphics mode to Hybrid on an AMD+Nvidia system
  2. Run any graphically intensive apps or games which would otherwise run efficiently with/without Envycontrol on other Linux distros.

Expected behavior The fan speed should dynamically change based on the load on the GPU like on other distros and not be constant at 100% speed even at the slightest load.

System Information:

bayasdev commented 9 months ago

Hello there @sid3425

What you describe seems to me more like a distro specific problem, in my personal experience Fedora is known for overheating issues.

In the meanwhile you can check with nvidia-smi how much power your GPU draws and compare it with other distros / different kernels or nvidia drivers.

Greetings.

lurker98 commented 6 months ago

The games run were Cyberpunk 2077, Red Dead Redemption 2, my GPU has enough cooling to run those games smoothly but does not require full fan speed My CPU is an AMD Ryzen 5 5600H and GPU is an Nvidia GTX 1650

Your GPU does not meet the recommended specifications for either of these games. When you launch any game, your GPU's default state would be to work itself at 100% to provide as many frames per second as possible. This would heat up the GPU, requiring cooling, which usually means that your fans would be at full tilt, unless you employ BIOS or userspace tools to set a custom fan curve. This is the way it is expected to work. If you wish to run the GPU hotter and have the fans slow down, you can do that with fan control software, but this will reduce the life span of your hardware.

bayasdev commented 6 months ago

@sid3425 also on a laptop the fans are controlled by an EC chip on the BIOS, there's software like Notebook Fan Control that work by writing to the EC registers but this can be risky and is usually not supported on all laptops.

Closing this issue.

sid3425 commented 6 months ago

@lurker98 @bayasdev Although I don't have that particular laptop with me anymore due to a sudden change in requirements, I would like to say that there was no fan curve control in the BIOS nor any app that would allow it to work, so the fans spun only when there was some intensive load like video editing or games. This is a common thing among most HP laptops I've seen even their gaming ones, and unless they don't add custom fan curve support I don't think there's anything that can be done about that.

However, I'd like to also add that the particular laptop ran rather efficiently with Linux along with the proprietary Nvidia drivers installed as well. On Debian/Ubuntu derivatives like Mint, Arch Linux and NixOS, the fans only spun up lightly during intensive load with Envycontrol set to Hybrid mode and the laptop was only a bit warm after a 2 hour playthrough. My main issue occurred on Fedora where the temperatures would rise too much even when idling, which made me think that it was an Envycontrol problem rather than a Fedora problem. I can say this as removing it and letting Fedora handle the graphics switching itself barely made any difference, and my current laptop which has an Intel Core i5 1335u CPU with Iris Xe integrated graphics had the exact same problem under Fedora but on other distros it runs quite efficiently.

As for the GPU compatibility with the aforementioned games, except for slightly lower VRAM than recommended, the 1650 has enough processing power to handle them on 1080p Low/Medium graphics with AMD FSR upscaling set to Balanced, so that isn't really much of issue(On my current system with Iris Xe, GTA 5, Doom 2016 and RDR2 work fine at 720p medium with Arch Linux, however I've seen people run Cyberpunk on it with the Steam Deck graphics preset which I guess would actually push it too far, and Doom Eternal just crashes on launch with Iris Xe in general).

I hope this comment clears any doubts that my original bug report may have caused😄

Edit: some minor grammatical errors