I’ve written two scripts to maintain the temperature/fan speeds for NVIDIA GPUs on Linux.
Adaptive fan speed management for NVIDIA GPUs (GeForce GTX) on Linux.
Adaptive fan speed management for NVIDIA GPUs on Linux to maintain the given temperature.
However I’ve noticed that NVIDIA drivers often disregard certain fan speed values.
Please, fix this bug.
My GPU is Gigabyte GV-N660OC-2GD.
My drivers are 352.21.
Have you tried lower polling rate? ie not spamming nvidia-settings so many times?
I guess polling once per 2 seconds isn’t too much to ask? ;-)
Dunno I did a python script to play with the brightness controls (LED on the GPU) to music. Issue was that every command to nvidia-settings took atleast ~1s to complete with callback. I went around that by not blocking with callbacks but noticed that the led did sometimes just ignore my calls.
I’ve found the nvidia driver also doesn’t do adapative fan control if the GPU isn’t the primary.
In my case the laptop has a GeForce 8600M GT and also a Quadro NVS420 dual GPU in an external PCIe ViDock for a total of 6 monitors.
This limits the driver version to no higher than 340.76.
When the system powers up the external GPU fan is heard to spin up at what sounds like maximum RPM. When the nvidia Xorg driver starts the fan goes almost silent and after a few minutes (depending on work-load) the PC will freeze due to the GPU overheating.
Therefore the xorg config includes:
Option “Coolbits” “13”
which allows manual control of the Fan speed via GPU 2 thermal settings.
I have to manually enable this every time the Xserver is started and have found that the best setting for most work-loads is around 70%. The active settings reports as 40%. If I forget to enable it immediately the fan needs to run at 100% for a few minutes to bring the temperature down. With this the typical temperature on GPU 2 is reported as around 65C and for GPU 1 is around 55C.
You ever find a solution to this? i tried running the script. i see it trying to change the fan speeds in nvida-settings, but it never really sets the speed to what the script is trying to. would be great to find a variable speed control solution. the fan profile of my gtx770 is just too slow at increasing fan speed as the temp rises. doesn’t go over 35% until temp reaches 80c