2 ways. One of course is through command prompt. No fancy gui's nothing. And unfortunately there's no hand holding here, you literally need to tweak a little, test... tweak again, retest... over and over and over until you're about to go ballistic and sleep near the damn thing if you're ocd and jump for joy when you decrease your rig by 1c. But there is 1 way for a gui like method and that's through nvidia's xconfig. There you can also change fanspeeds, core, and mem frequencies but I advise not to use that because you want to exit out of that when you're done and checking the actual mining pprogram. But if you're running headless you'd need to access gdm3 and then get out of there and double check using nvidia-smi. At least that's what I do. No mining distros needed, straight up ubuntu 20.04 headless server. Hopefully that helps, Good luck! Answer from AreaFifty1 on reddit.com
🌐
GitHub
gist.github.com › gboddin › bbf10dc51cd468fba93e8f4e17c51859
Mining optimisation under Linux · GitHub
In the script a value of 100 is used for GPUMemoryTransferRateOffset. The max memory overclock you can achieve depends on your card. Start from 100 and increase slowly to find a safe spot ( running stable for more than 30 minutes ). systemctl enable /nvidia-mining.service systemctl start nvidia-mining · Not covered, you need a Windows computer with ATI flash. The current linux version doesn't support Polaris cards.
🌐
2Miners
2miners.com › home › how to overclock nvidia and amd graphics cards on different algorithms
How To Overclock Nvidia and AMD Graphics Cards on Different Algorithms - Crypto Mining Blog
October 13, 2022 - Let’s see how to overclock AMD graphics cards from its new and quite effective series. Unlike Nvidia, these GPUs don’t have special smart states at the BIOS level. So Windows doesn’t help you get a better hash rate. Furthermore, it lowers stability. It’s not surprising that most “red” miners (AMD logo is red) prefer more stable Linux...
🌐
Reddit
reddit.com › r/gpumining › those running linux - how are you overclocking your cards?
r/gpumining on Reddit: Those running Linux - How are you overclocking your cards?
March 6, 2021 -

I've been searching here and there for a few days now, and can't seem to find a complete answer that rivals something like afterburner.

specifically I think I'm looking for voltage and clock options. I've never overclocked a card before but over / under stock on voltage and clock covers everything I think

I see that the mining focused distros have all the options, and profiles and stuff, but I cant seem to find out how to do it outside of that. What are they doing under the hood?

gui / cli whatever

🌐
Linus Tech Tips
linustechtips.com › community › folding@home, boinc, and coin mining
Linux Ubuntu - How to overclock memory on AMD cards for ETH Mining - Folding@home, Boinc, and Coin Mining - Linus Tech Tips
November 6, 2020 - I was wondering if anyone would help me figure out how to overclock my amd rx 570/580 cards on a linux ubuntu 20.04 rig where I'm mining ethereum. I did a bios overclock on the cards a while ago using polaris. It's been such a long time I don't even remember how i did it, but I know that it's don...
🌐
Reddit
reddit.com › r/ethermining › trying to overclock/undervolt amd gpu (rx 580) on linux
r/EtherMining on Reddit: Trying to overclock/undervolt AMD GPU (RX 580) on Linux
January 20, 2021 -

I am trying to tune my rx 580 gpus on Ubuntu 20.04 (kernel downgraded to 5.4.0-54 to install amdgpu-pro 20.40). I followed this post. However, I am having problems doing "sudo sh -c "echo 's 7 1150 875' > /sys/class/drm/card0/device/pp_od_clk_voltage". It seemed the command was stuck at an infinite loop but I could interrupt it with Ctrl+c. I could see the values were being set correctly though (sudo cat /sys/class/drm/card0/device/pp_od_clk_voltage). I do have amdgpu.ppfeaturemask=0xffffffff in the GRUB configuration.

Also, the keyboard interruption generates the following message (dmesg).

[ 1556.408582] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[ 1556.516184] [drm] UVD and UVD ENC initialized successfully.
[ 1556.651170] [drm] VCE initialized successfully.
[ 1556.655024] [drm] Cannot find any crtc or sizes
[ 1557.478559] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[ 1557.666041] [drm] UVD and UVD ENC initialized successfully.
[ 1557.767006] [drm] VCE initialized successfully.
[ 1557.776713] [drm] Cannot find any crtc or sizes
[ 1558.661846] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[ 1558.866083] [drm] UVD and UVD ENC initialized successfully.
[ 1558.967046] [drm] VCE initialized successfully.
[ 1558.971009] [drm] Cannot find any crtc or sizes
[ 1560.676695] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[ 1560.782288] [drm] UVD and UVD ENC initialized successfully.
[ 1560.918262] [drm] VCE initialized successfully.
[ 1560.921708] [drm] Cannot find any crtc or sizes

I am wondering if anyone has and insight to help me with this. Thanks in advance.

🌐
Reddit
reddit.com › r/ethermining › amdgpu-pro 17.30 on linux overclocking?
r/EtherMining on Reddit: AMDGPU-Pro 17.30 on Linux Overclocking?
October 5, 2017 -

OS: Ubuntu 16.04 LTS Driver: AMDGPU-Pro 17.30 Miner : Claymore ETH V10.0 I'm really new to Linux, but have been able to find my way around pretty easily with all the content on the web. One think that has eluded me is how to clock my GPU memory. I went from 28/29 MH per card to 18/19.... I attempted to OC in the terminal, it gives me only stock memory clocks even though I have flashed the bios. I first tried via Claymore but apparently AMD ADL SDK isn't supported by the driver.

Anyone turned this stone over yet?

Any help would be much appreciated.

Top answer
1 of 3
2

I confirm you cannot overclock or undervolt throug claymore with amdgpupro in ubuntu 16.8

note that you should consider instaling rocm which solves Polaris bug that make speed fall with DAG size https://www.reddit.com/r/EtherMining/comments/6wsf7o/new_amd_blockchain_optimized_drivers_availible/

I can get 26-31 MH/s with RX480 after editing bios, and testing many variation :

  • change the straps. NB this polarisbioseditor allow to set optimal memory strap https://github.com/jaschaknack/PolarisBiosEditor (UBER or GOOD) ... anyway sometime using for 2000 the strap of 1500/1625/1750 (depend on the card) is better. some bad cards alos enjoy UBER below 2000MHz, or 1625/1500 ... each card is different...

  • half GPU frequency to 1100 or 1200 , it is useless for ETH

  • change ram frequency to something stable... it can be 2250, 2150,2000 or 1900 depending on the card

for consumption undervolting from bios (or claymore) don't work unless you have modified the bios to edit the VoltageObjectinfo to add an offset... very risky but some sell the service . you have to know which voltage controller is on the card, which mean an i2cdump, which is not possible with amdgpu (need windows AFAIK) http://www.overclock.net/t/1621800/would-appreciate-help-in-finding-editing-the-voltage-offset-in-the-rx480-bios/0_100#post_26047272

in case of bricked GPU, I could save my card by booting in generic kernel in rescue mode (edit grub to have the boot menu available), and using atiflash http://bios.ethosdistro.com/atiflash-linux/

keed original bios of couse, put is on your disk, with atiflash, and even create a quick script for atiflash -p 0 OriginalBios.rom

2 of 3
1

https://github.com/OhGodACompany/OhGodATool

🌐
MinerOS
mineros.info › articles › mineros-overclocking
MinerOS - AMD and Nvidia video cards overclocking in MinerOs
But the main thing is the competent ... be the same, and consumption is 2 times less on a correctly configured card. MinerOs supports overclocking and downvolting of both AMD and Nvidia graphics cards....
Find elsewhere
🌐
Kryptex Pool
pool.kryptex.com › articles › linux-overclocking-en
⛏️Overclocking GPU on Ubuntu Linux | Kryptex Pool
March 30, 2026 - In the Profiles tab, create a new profile and overclock your graphics card. Done! Your configured settings will be applied to your video card until you modify them in the created profile.
🌐
Reddit
reddit.com › r/amd › how to overclock your amd gpu on linux
r/Amd on Reddit: How to overclock your AMD GPU on Linux
January 20, 2019 -

One thing I missed from Windows after my transition to Linux was the ability to easily adjust my GPU's clock speeds and voltages. I went to the godly Arch Wiki and found there's a way to overclock AMD GPUs, but some steps are not very clear and I had to do some googling to get everything working.

EDIT: Vega GPU are not supported as of kernel 4.20.2! Here's a workaround by u/whatsaspecialusername.

First things first, your kernel has to be at least version 4.17 (you can check by running uname -a), although it's recommended to update it to the latest version for system stability, bug fixes and new features (for instance, Hawaii support for overclocking was introduced in 4.20). The driver should be amdgpu (not the proprietary amdgpu-pro). I suggest installing the latest mesa+amdgpu from this PPA for *buntu, but I don't know about other distros. It might not even be a necessary step.

You need to add the parameter amdgpu.ppfeaturemask=0xffffffff to your GRUB configuration. To do so, edit /etc/default/grub as root and add the parameter between the quotes of GRUB_CMDLINE_LINUX_DEFAULT. Save, then run sudo update-grub2 or sudo grub-mkconfig -o /boot/grub/grub.cfg, depending on your distro. Reboot. If you're running any bootloader other than GRUB, check this Arch Wiki page.

Now, we need to find the file with our GPU's clocks and voltages. In my case it was in /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/, but you can find the directory by running readlink -f /sys/class/drm/card0/device.

The file we want to work with is called pp_od_clk_voltage. Mine looked like the following (my card is a Sapphire RX 580 Nitro+ 4GB):

OD_SCLK:
0:        300MHz        750mV
1:        600MHz        769mV
2:        900MHz        887mV
3:       1145MHz       1100mV
4:       1215MHz       1181mV
5:       1257MHz       1150mV
6:       1300MHz       1150mV
7:       1411MHz       1150mV
OD_MCLK:
0:        300MHz        750mV
1:       1000MHz        800mV
2:       1750MHz        950mV
OD_RANGE:
SCLK:     300MHz       2000MHz
MCLK:     300MHz       2250MHz
VDDC:     750mV        1200mV

We want to edit the P-state #7 for the core and #2 for the VRAM, as those are the values that our GPU is going to run at while under load. On Windows, my optimal values were 1450MHz for core and 2065MHz for memory, so I'm going to edit the file as follows:

sudo sh -c "echo 's 7 1450 1150' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage"

Where "s" means we're editing the core's values, 7 is the seventh P-state, 1450 is the speed we want in MHz, 1150 is the voltage in mV. Note that I didn't run sudo echo "s 7 1450 1150" > /sys/class/drm/card0/device/pp_od_clk_voltage like the Arch Wiki states, because it would throw an error and not apply the changes (this might have worked without "sudo" if we logged in as root with sudo su, but it's best not to do so for safety reasons). See here.

Same with the VRAM: sudo sh -c "echo 'm 2 2065 950' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage"

After these two commands the file is going to be the same except for the two lines of the P-states we just edited. We can check by running cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage.

I didn't mess with voltages because I'm already satisfied with my results and I'm very paranoid about damaging my GPU. If you really want to, please be really careful as you might cause fatal damage to your card!

Once we are done, running sudo sh -c "echo 'c' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage" will apply the changes and the GPU will start running at those new frequencies when under load.

While I haven't found a way to actively monitor clock speeds à la MSI Afterburner (EDIT: there is actually! See this comment by u/AlienOverlordXenu), I could see a sudden increase in FPS in Heaven Benchmark as soon as I applied the new clocks. I set the camera to free mode (so that it stops moving) and after applying the FPS went from 55-56 to 60-61!

(The guide on ArchWiki also has a command to change the maximum power consumption in Watts: I didn't mess with it as I wasn't sure what was a safe value)

Now there's one problem: every time we reboot our PC the clocks are going to reset. So how do we make them stick?

Assuming your distro has systemd, we can create a service that runs the three commands that edit and apply the clocks at boot. If your distro doesn't have systemd, you can follow these steps.

First, we need to create a script. I named mine "overclock" and put it in /usr/bin/. It looks like this:

#!/bin/sh
sudo sh -c "echo 's 7 1450 1150' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage"
sudo sh -c "echo 'm 2 2065 950' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage"
sudo sh -c "echo 'c' > /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage"

Then, we have to create a file in /etc/systemd/system/ with a .service extension. I named mine overclock.service:

[Unit]
Description=Increase GPU core and memory clocks

[Service]
Type=oneshot
ExecStart=/usr/bin/overclock

[Install]
WantedBy=multi-user.target

sudo systemctl enable overclock.service will enable our service. After rebooting it should automatically overclock the GPU. We can check if it did by running cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/pp_od_clk_voltage.

(It's not necessary, but I also made a script that sets the GPU back to the stock clock speeds. I didn't make a service for it, I just put it in my Documents folder.)

So that should be it! Keep in mind that it might not work on any AMD GPU, in fact I couldn't find a way to do it on my Ryzen+Vega laptop (something with power saving mode I'm guessing), but it's always worth a try. This is my first "real" guide so any feedback is very much appreciated.

🌐
LinuxConfig
linuxconfig.org › home › overclock your radeon gpu with amdgpu
Overclock AMDGPU on Linux for Radeon RX GPUs
August 22, 2018 - Learn how to overclock AMDGPU on Linux for Radeon RX. Optimize performance with step-by-step control of fan speeds and clock adjustments.
🌐
NiceHash
nicehash.com › blog › post › nvidia-and-amd-graphics-card-oc-settings-for-mining
NVIDIA and AMD graphics cards OC settings for mining | NiceHash
May 31, 2022 - Use NiceHash QuickMiner and set overclocks with a single click of a button. Supported on all of the below listed NVIDIA GPUs! *Might be an LHR model. Use NiceHash QuickMiner or NiceHash Miner to fully unlock LHR.
🌐
2Miners
2miners.com › home › beginning miner’s guide and gpu overclocking on different algorithms
Beginning Miner's Guide and GPU Overclocking on Different Algorithms - Crypto Mining Blog
October 13, 2022 - If you use MSI Afterburner to monitor your GPUs (every miner should use it), you will notice an increase in operating memory clock when mining and a higher hash rate when mining RAM-dependent algorithms, like Cortex. Memory clock will not fluctuate, so you can overclock memory safely. You will get a real operating value in MHz, not just a plus sign in the settings. Nvidia graphics cards are more universal in terms of algorithms, but it doesn’t mean that they are always more profitable than AMD.
🌐
NiceHash
nicehash.com › blog › post › ravencoin-(kawpow)-nvidia-and-amd-overclock-settings-for-gpu-mining
Ravencoin (KAWPOW) NVIDIA and AMD overclock settings for GPU mining | NiceHash
January 10, 2022 - Overclock settings below should serve as a starting point overclock to give you a rough idea about what settings you should use, and might not result in the best performance for your needs. Each GPU will perform differently due to the silicon lottery. Looking for Ethereum (DaggerHashimoto) settings? Find them here. *We recommend enabling Fast timings in AMD Radeon Software for the 6000 series. **Linux overclocking values.
🌐
Reddit
reddit.com › r/nvidia › overclocking persistence with linux
r/nvidia on Reddit: Overclocking Persistence with Linux
February 20, 2021 -

I have a 3080 in a dual boot Win 10/Ubuntu 20.04 machine. I've spent upwards of a week trying to figure out how to overclock this card consistently and autonomously on Linux but I found out today that it's not actually being set correctly.

I have already gone through and did the coolbits=28 option in my xorg.conf file

In order, this is what my script does:

  1. Sets persistence mode (nvidia-smi -pm 1)

  2. Sets fan override via nvidia-settings

  3. Sets fan speed to 50% via nvidia-settings

  4. Sets PowerMizer mode = 1 via nvidia-settings

  5. Sets the "GPUGraphicsClockOffset[3]" value to 200 via nvidia-settings

  6. Sets the "GPUMemoryTranserRateOffset[3]" value to 800 via nvidia-settings

Now, all of these report back successful, but only 1-3 actually are successful, 4-6 print success but if I query the card before the commands/script, the value matches with the query after the script is run. I can set all of this via Green With Envy or within NVIDIA's own X configuration, but these options don't persist through a reboot and neither really appears operable from the command line or provide the ability to load overclocking configuration files of any sort.

I've done quite a bit of research and I'm either finding outdated information or inaccurate information. For example, some sources say the overclock commands (steps 5 & 6) won't work if the PowerMizer mode isn't 1 (step 4) and I just saw that today, but no difference after implementing that.

The fact that it reports back OK is the most confusing part. I've never seen a program so fussy about parameters as nvidia-settings and then it reports back positive when actually nothing happened? Weird.

Anyway, I'm out of ideas and out of search results with any variance from what I already have.

Top answer
1 of 2
3
Persistence mode is not really needed and you can leave it out. Settings will remain active as long as your X11 server is running and beyond that it likely doesn't matter. Next verify that you are indeed using the correct clock offsets. For my 3900 i had to use offset 4 for the high performance mode. If you use 3 you might be changing the clock for a lower performance mode that isn't even used. Also for the start use smaller offsets. If the GPU crashes it might reset back to defaults. A 200 offset seems quite high to me considering that we cannot change voltages but if you have golden silicon it might work i guess. And finally you may also need to increase the powerlimit for the card to even boost higher. Here's the script that i used: sudo nvidia-smi -pl 400 nvidia-settings -a "GPUPowerMizerMode=1" nvidia-settings -a "GPUGraphicsClockOffset[4]=100" I didn't have a memory overclock but same principle there.
2 of 2
2
I'm using the Nicehash recommended settings for lolminer, and I'm getting a sustained 55MH/s on my 306ti and my 3070s (sometimes peaking quite a bit higher). https://www.nicehash.com/blog/post/nvidia-and-amd-graphics-card-oc-settings-for-mining For my 3070, that means I'm running these settings: Power Limit: 65% Core Clock Delta: -500 Memory Clock Delta: 1100 In Linux, it looks like this: nvidia-settings -c :0 -a '[gpu:0]/GPUGraphicsClockOffset[4]=-500' -a '[gpu:0]/GPUMemoryTransferRateOffset[4]=1100' sudo nvidia-smi -pl 130 -i 3 I saw a suggestion that recommended increasing the power limit. I initially thought that was the way to go, but I have learned that it doesn't really affect hash rate, and it's just a waste of energy. I'm very new to this whole thing (first rig is 7 days old), so I haven't really tweaked the settings yet. I'm also not as informed as I should be, so take it as a grain of salt. Or you can look at all the responses that will likely skewer me (haha).
🌐
GitHub
github.com › matszpk › amdcovc
GitHub - matszpk/amdcovc: Utility to overclock AMD Radeon GPU's in console mode (linux) · GitHub
This program has been written to replace amdconfig utility and allow to overclock Radeon GPU's if no running X11 server. An amdconfig utility requires a running X11 server and X11 kept configuration to be working correctly. Thus, this program ease overclocking of Radeon GPU's under console environment (in SSH or Linux console).
Starred by 196 users
Forked by 31 users
Languages   C++ 99.3% | Makefile 0.7%
🌐
Bitcoin Wiki
en.bitcoin.it › wiki › GPU_overclocking_tools
GPU overclocking tools - Bitcoin Wiki
With these tools it is possible to change the clock speeds of Radeon graphic cards to increase hashrate and thus mining profitability · Usually core clock is increased and memory clock is decreased to lower temperatures and save power
🌐
Make Tech Easier
maketecheasier.com › home › computing › linux › how to overclock your amd gpu with amdgpu on linux
How to Overclock Your AMD GPU with AMDGPU on Linux - Make Tech Easier
March 12, 2018 - AMD’s overclocking settings are percentage-based. The default value is “0.” When you change that to a positive number, the card will increase its frequency by that percent over its default clock rate. So, if you enter a “5,” the card will overclock by 5%. The first file that you need to modify is “/sys/class/drm/card0/device/pp_sclk_od.” This file controls the card’s GPU clock speed.