I was looking at this myself and came across this thread: https://www.gamingonlinux.com/forum/topic/4255/post_id=26714
I’ve not tried it myself yet, but it seems reasonable to try, seems to be for either ubuntu or PopOS.
Posted by The_Aquabat 8 Feb, 2020 (With reformatting by me)
First you have to add this to grub amdgpu.ppfeaturemask=0xffffffff
Edit the file /etc/default/grub
Find the line GRUB_CMDLINE_LINUX_DEAFULT
and add that to the end, like this
GRUB_CMDLINE_LINUX_DEFAULT="splash=silent quiet showopts amdgpu.ppfeaturemask=0xffffffff"
Then run update-grub
and reboot
After rebooting overclocking is unlocked, running a command like this will overclock your gpu memory
echo "m 2 2200 900" > /sys/class/drm/card0/device/pp_od_clk_voltage
And then commit the change
echo "c" > /sys/class/drm/card0/device/pp_od_clk_voltage
(Look for the correct values for your card)
For controlling the GPU fan I personally use this: GitHub - wepiha/qt-amdgpu-fan-ctl: Python script which enables a Graphical User Interface manually control
Or the other option you have if you don’t want to input commands for overclocking, you could use this app that it has more features: GitHub - marazmista/radeon-profile: Application to read current clocks of ATi Radeon cards (xf86-video-ati
You have to compile it manually because I don’t think there is a repo for radeon-profile.
And then the other GUI app there is, is WattmanGTK
For overclocking the CPU I use Zenstates
You need to read the wiki and use this spreadsheet to calculate the correct values: RyZenPstateCalc - Google Sheets
For example this is the script I use
#!/bin/sh
./zenstates.py -p 1 -f A0 && \
./zenstates.py -p 0 -f A0 && \
./zenstates.py -p 2 -f 8C