Ubuntu – Nvidia: Overclocking, Undervolting, Fanspeed just won’t work on Ubuntu

driversgraphicsnvidiaxorgxorg.conf

I know this has been asked before, but all that I've read so far to this topic couldn't help me. I'm new to Linux, so this might also be a reason that I can't get it working though I'm learning constantly.

Goal: I want to be able to change/adjust the fan speed, voltage, etc. of my Nvidia graphic cards. It's a mining rig, currently running EWBF-Miner for ZCash ([Link][1]). Mining works fine, but the GPU temperatures and power cut be lower. Both were lower when mining Ethereum with Claymore.

System:
– Xubuntu 16.04
– 2 x Gigabyte GTX Geforce 1070 OC Windforce 8 GB (temperatures ~60°C – 75°C)
– 2 x Asus GTX Geforce 1070 Turbo 8 GB (temperatures ~70°C – 81°C)
– Mainboard MSI Z170A SLI Plus (with integrated Intel graphics adapter)
– In Bios I have set PEG0 and PEG1 both to GEN1; the display has to be on IGD since I have the display connected to the integrated GPU (Can't reach the ports from the other GPUs);normally the display is not connected

Tried so far:
I have tried different Nvidia drivers. The ones from ppa (different versions) . Currently the original Nvidia driver is installed (In GUI in "additional drivers" the other options are grey now=unselectable). I made the whole setup mostly following this guide. Currently I have uninstalled (purge) and re-installed the Nvidia drivers a couple of time (maybe this also had negative impact since I also receive two error messages when I boot the system). Currently I'm not even sure anymore if I have Cuda SDK v8 installed or not (I couldn't purge it).

I tried to activate Coolbits in /etc/X11/xorg.conf by manually adding to the file:

Option "Coolbits" "28"

I also tried other numbers: 1 and 31. These don't have any effect on the Nvidia X Server, so there is for example not showing up a bar to control fan speed. Also after a reboot or log-off and re-login the values I've added to xorg.conf are gone. They haven't been stored.
I also tried everything mentioned in this thread. I also tried the power limits (sudo nvidia-smi -pl 30) mentioned in that thread. They actually have an effect, but are not saved after reboot. I also tried various other things which I found in the internet and which I already forgot. To me the problem seems to be that the adjustments (Coolbits settings) don't have an impact at all and they are not stored.

Currently I have no idea what to do. But before I re-install everything, including Ubuntu, I would really appreciate some advice.

Additional notes: Not sure if the graphic cards need to have a display cable (HDMI, DVI) attached or something, but when I worked on this I had the Mainboard GPU attached to a display. I try to do most operations vie OpenSSH from my Desktop computer.

Edit:
For example I tried these steps without any impact (apparently can't link the source):

Here's is how I was able to enable overclocking for my 1060's on Ubuntu:
Step 1 : Add the Proprietary drivers ppa sudo add-apt-repository ppa:graphics-drivers/ppa
Step 2 : Update the repos sudo apt-get update
Step 3 : Install the nvidia driver 381.09 beta sudo apt-get install nvidia-381
Step 4: From terminal: sudo nvidia-xconfig –enable-all-gpus sudo nvidia-xconfig –cool-bits=12
Step 5: REBOOT
Step 6: Open up nVidia X Server Setting application. Go to "PowerMizer" for each card. Voila!

Best Answer

2018 Answer

To enable overclocking, run:

nvidia-xconfig --cool-bits=28

Reboot your PC. Now you can do things like:

# List all GPUs
# Set power to 100W, +1000 Mhz Mem clock offset, and +100 Mhz on GPU clock
nvidia-settings -c :0 -q gpus
nvidia-smi -i 0 -pl 100
nvidia-settings -c :0 -a '[gpu:0]/GPUMemoryTransferRateOffset[2]=1000'
nvidia-settings -c :0 -a '[gpu:0]/GPUGraphicsClockOffset[2]=100'

The adventage of this method is that you can change the power input. Potential harm risk. Proceed with careful. Source here

Related Question