View previous topic :: View next topic |
Author |
Message |
Armand Karlsen n00b
Joined: 18 Aug 2005 Posts: 59 Location: London, UK
|
Posted: Sun Sep 29, 2024 5:07 pm Post subject: Nvidia GPU fan excessive noise |
|
|
My computer has an Nvidia RTX 2080 Ti GPU which has a very annoying habit of the fan going absolutely nuts when running games (e.g.: quiet, quiet, quiet, FULL SPEED SCREAMING, quiet, quiet, SCREAMING, quiet, SCREAMING, etc etc). When I used to have Windows 10 on the machine, I would keep this under control with MSI Afterburner and just set a maximum target temperature, then Afterburner would dynamically adjust the fan and other GPU parameters to keep things reasonable.
Is there any equivalent utility to do this in Gentoo, or otherwise a way to stop the fan going crazy? |
|
Back to top |
|
|
jpsollie Guru
Joined: 17 Aug 2013 Posts: 323
|
|
Back to top |
|
|
madmin n00b
Joined: 04 Nov 2018 Posts: 27
|
|
Back to top |
|
|
Ralphred l33t
Joined: 31 Dec 2013 Posts: 653
|
Posted: Mon Sep 30, 2024 12:08 pm Post subject: |
|
|
If you can't find something that does what you want out of the box, I have an amd tailored daemon written in python - it would be trivial to change the part of it that does the actual "set fan speed to" to use the CLI tool mentioned in the topic madmin linked if you hit a wall; feel free to ask for an nvida version if that happens, and you have the time/inclination to help with testing.
Though, reading said thread creates the impression that CLI fan control is done via communication with X, so having custom fan control started as part of your DE login or "gamemode" scripts seems more appropriate? |
|
Back to top |
|
|
Armand Karlsen n00b
Joined: 18 Aug 2005 Posts: 59 Location: London, UK
|
Posted: Mon Sep 30, 2024 6:28 pm Post subject: |
|
|
jpsollie wrote: | which driver are you using? if it's the proprietary driver, I remember it has some config tool which may allow you to set some thermal limits
for the open-source driver I'm not sure whether that one already supports thermal limits.
maybe you can find a lookalike method which is being used with the amdgpu driver? https://wiki.gentoo.org/wiki/AMDGPU#Power_management |
I'm using the proprietary nvidia-drivers-550.107.02-r1 at the moment. The nvidia-settings utility does let me set the fan speed, but it seems a simplistic "set target fan speed" only, with no other controls that I can find. (that's why I was asking about an MSI Afterburner equivalent). Sadly, I can't see quite the same items as described in the amdgpu article, and I don't want to poke around at random. |
|
Back to top |
|
|
Armand Karlsen n00b
Joined: 18 Aug 2005 Posts: 59 Location: London, UK
|
Posted: Mon Sep 30, 2024 6:39 pm Post subject: |
|
|
Ralphred wrote: | If you can't find something that does what you want out of the box, I have an amd tailored daemon written in python - it would be trivial to change the part of it that does the actual "set fan speed to" to use the CLI tool mentioned in the topic madmin linked if you hit a wall; feel free to ask for an nvida version if that happens, and you have the time/inclination to help with testing.
Though, reading said thread creates the impression that CLI fan control is done via communication with X, so having custom fan control started as part of your DE login or "gamemode" scripts seems more appropriate? |
By all means, I'd be happy to have a look at an nvidia version I don't have a "gamemode" setup as such, but I would at least like to have something that just sits in the background to more smoothly apply the fan, rather than those annoying fan spikes. |
|
Back to top |
|
|
Ralphred l33t
Joined: 31 Dec 2013 Posts: 653
|
Posted: Wed Oct 02, 2024 1:16 pm Post subject: |
|
|
Armand Karlsen wrote: | I'd be happy to have a look at an nvidia version I don't have a "gamemode" setup as such, but I would at least like to have something that just sits in the background to more smoothly apply the fan, rather than those annoying fan spikes. |
I have an old junker in the spare room with a quadro card in it, give me a week to throw an OS at it and sort it out >> this feels like a better way forward than "remote testing" when someone else's hardware is on the line... |
|
Back to top |
|
|
Ralphred l33t
Joined: 31 Dec 2013 Posts: 653
|
Posted: Sat Oct 05, 2024 9:09 pm Post subject: |
|
|
So, it's working, you need Code: | Option "CoolBits" "4" | in your xorg device section (which you probably have).
The py code is here and the kmplot file that was used to "make the fan curve" is here, for your tinkering pleasure.
My card only had one fan, but I defaulted it to three (that's normal, no?), the rest is self explanatory or in the code comments.
It will die horribly if the Xserver shuts down, which is kind of handy as no-one wants more than one of them vying for supremacy, it'll also refuse to start if one is running.
There is some pretty robust "stop" code (albeit ugly) if it crashes or goes zombie, and it will run the fans at max speed for 5 seconds on start-up, so you don't have to go and check it's working. |
|
Back to top |
|
|
Armand Karlsen n00b
Joined: 18 Aug 2005 Posts: 59 Location: London, UK
|
Posted: Thu Nov 07, 2024 10:52 am Post subject: |
|
|
Ralphred wrote: | So, it's working, you need Code: | Option "CoolBits" "4" | in your xorg device section (which you probably have).
The py code is here and the kmplot file that was used to "make the fan curve" is here, for your tinkering pleasure.
My card only had one fan, but I defaulted it to three (that's normal, no?), the rest is self explanatory or in the code comments.
It will die horribly if the Xserver shuts down, which is kind of handy as no-one wants more than one of them vying for supremacy, it'll also refuse to start if one is running.
There is some pretty robust "stop" code (albeit ugly) if it crashes or goes zombie, and it will run the fans at max speed for 5 seconds on start-up, so you don't have to go and check it's working. |
(Sorry for the very late reply, had a bunch of other stuff to deal with in the meantime)
So... I downloaded the script, made executable, tried a test run, but I'm running into this error: Code: | fenrisulfr ~/nvtempd # ./nvtempd start
fenrisulfr ~/nvtempd # Authorization required, but no authorization protocol specified
ERROR: The control display is undefined; please run `/usr/bin/nvidia-settings --help` for usage information.
Traceback (most recent call last):
File "/root/nvtempd/./nvtempd", line 226, in <module>
main.start()
File "/root/nvtempd/./nvtempd", line 56, in start
self.get_mode()
File "/root/nvtempd/./nvtempd", line 150, in get_mode
self.current_mode=self.modes[mode]
^^^^
UnboundLocalError: cannot access local variable 'mode' where it is not associated with a value |
I'm getting the same message whether I try running as root or regular user, whether I have the nvidia settings gui app running or not. The nvidia settings app itself seems to work normally, far as I can tell. If it's any help, this is the conf generated by the nvidia-settings app: https://pastebin.com/pXsuVudz |
|
Back to top |
|
|
Ralphred l33t
Joined: 31 Dec 2013 Posts: 653
|
Posted: Thu Nov 07, 2024 11:43 am Post subject: |
|
|
So, erm, Authorization required, but no authorization protocol specified sounds like an "X thing", did you ssh in to the machine, or try to run the script as a different user to the owner of the X session? Also The control display is undefined; sounds like it ran in an environment without DISPLAY set, nvidia-settings wants to run in an X session, even when you are only probing for parameters on a CLI.
If neither of these make sense, the machine I "threw together" to test/make this work is still in one piece, I just have to plug it in, so setting DISPLAY inside the script and testing is just a few cables plugins away.
Quote: | Sorry for the very late reply, had a bunch of other stuff to deal with in the meantime | No need to apologise, we all have IRL responsibilities and other things that occupy our time. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|