I’m trying to overclock my dedicated graphics card, but it seems it’s not working.
I’ve found a post on Reddit that someone else overclocked that type of GPU with the following settings:
Core clock (MHz) 1380
Memory clock (MHz) 1850
I followed the instructions on the ArchLinux Wiki > AMDGPU > Overclocking (I’ve set the Kernel parameter amdgpu.ppfeaturemask=0xffffffff
).
Inspecting my pp_od_clk_voltage
gives the following:
$ cd /sys/class/drm/card1/device
$ cat pp_od_clk_voltage
OD_SCLK:
0: 214MHz 700mV
1: 547MHz 800mV
2: 786MHz 900mV
3: 902MHz 1000mV
OD_MCLK:
0: 300MHz 700mV
1: 625MHz 700mV
2: 1500MHz 850mV
OD_RANGE:
SCLK: 214MHz 902MHz
MCLK: 300MHz 1500MHz
VDDC: 700mV 1075mV
If I now try to write higher values, I get an invalid arguement error:
# echo 's 3 1000 1000' > pp_od_clk_voltage
bash: echo: write error: Invalid argument
Writing lower values is ok. It seems the values have to be in OD_RANGE
, which is documented in the Kernel as follows:
a list of valid ranges for sclk, mclk, and voltage labeled OD_RANGE
Finally, these are my questions:
- Is there a way to adjust the
OD_RANGE
for my GPU? - Where is this value set/configured?
- Who determines the values for
OD_RANGE
? Is it written down in the Kernel or provided by the manufacturer (AMD in this case)? - Is it a bad idea trying to change this value?