Welcome to the PiMP OS and Miner.farm forum.
Optimising your rigs by undervolting using OhGodATool
Edit: I am currently using PimpOS 2.8.6, after hearing feedback OhGodATool seems to not work on 2.9.6. If you wish to undervolt please use 2.8.6.
I have been trying to optimise my AMD rig comprising of 3 x RX 470 and 5 x RX 570 Sapphire Nitro cards and found out that GPUTool does not currently support undervolting. This can be very dangerous to your cards so please take your time and slowly tune your cards. I would hate for somebody to ruin a card due to this guide.
Okay, now on to the fun stuff. So the tool we are going to be using is called OhGodATool which allows us to modify our voltage and also our overclocks. For simplicity we will be moving away from GPUTool and doing everything from within OhGodATool.
To begin, we need to stop GPUTool from running on boot. So we will need to run
sudo nano startup.sh
Then on line 63 you will need to type "#" at the beginning of the line to comment out:
sleep 30 && /opt/pimp/gputool --config
The line should now appear like this:
#sleep 30 && /opt/pimp/gputool --config
This will avoid GPUTool from running when you first start your mining rig.
The next step would need to be a reboot of the system. This will return your OC's back to default because GPUTool will not have a chance to run during boot.
Once the system has rebooted we now need to run a few commands to fully understand your specific GPU.
Run the below command:
ohgodatool -i 0 --show-core
This should produce an output similar to this.
What this shows us is the several states that your GPU will run depending on load. So anything below state 7 we are not interested in.
We now need to know the voltage table, this will show us which voltage we can apply to DPM State 7.
To see the voltage states, run the command below:
ohgodatool -0 --show-voltage
Now we can fully see several states which we can use to "undervolt" our cards.
Now the real fun begins. Since we know both core and voltage states we can run a command which will assign a lower voltage to DPM State 7.
ohgodatool -i 0 --core-state 7 --core-vddc-idx 9 --core-clock 1050
Now I need to explain what each section of that command does.
"-i 0" This is selecting which GPU you want to optimise.
"--core-state 7" This is selecting the highest DPM state which is 7.
"--core-vddc-idx 9" This is assigning DPM State 7 the Voltage State 9 from the previous command.
"--core-clock 1050" This is setting the GPU Core Clock to 1050MHz.
So after this command your GPU core is now running at coreclock 1050 at 850MV.
If this does not work stable for you, please go up and change "--core-vddc-idx 9" to 10.
The next step is to undervolt your memory. This follows the same principle as above.
ohgodatool -i 0 --show-mem --show-voltage
This will produce a similar result as above.
Now that we know how many Memory States we have we can simply run the command below:
ohgodatool -i 0 --mem-state 2 --mem-vddc-idx 9 --mem-clock 2000
Now, I will also explain what the above commands do.
"--mem-state 2" This is selecting the highest Memory State that is shown when the "--show-mem" command is used.
"--mem-vddc-idx 9" This is assigning Memory State the Voltage State 9 from the "--show-voltage" command.
"-- mem-clock 2000" This is setting the GPU's memory clock to 2000MHz. Reduce this further if not stable.
Next we can now add the two commands above into one command like this:
ohgodatool -i 0 --mem-state 2 --mem-vddc-idx 9 --mem-clock 2000 --core-state 7 --core-vddc-idx 9 --core-clock 1050 --set-fanspeed 65
Now you will need to tinker with the settings until it is stable for you. I look forward to seeing any decrease in overall wattage! Good luck guys
We promise to keep your email safe and never spam you.
Copyright (c) 2012-2018 PiMP LLC. All rights Reserved.