1. Tutorials

Overclock your AMD Ryzen Mobile on Linux with Ryzen Controller

.

Overclocking is the process of changing the default clock speed of a computer’s component (CPU, RAM..) into a higher one in order to get a better performance in the PC equipped with it. It’s a very common thing do among gamers. It can be sometimes dangerous on the computer if you adjust the clock speeds too high, and it may physically damage your computer, but if you know what you are doing, you’ll get a better performance in most cases without breaking the red line.

There’s more to it than just changing the clock speeds of CPU and RAM: You can also for example change the maximum temperature a CPU can reach before it drops the performance down in order to save the physical condition of the CPU, or the maximum/minimum amounts of virtual RAM (VRAM) or the power (Watts, mA, V) that’s being supplied to various components in your computer. If you do those things correctly, you’ll get a better performance on your computer.

In order to do that on an AMD Ryzen Mobile CPU, you’ll need a special program for the task. Here comes Ryzen Controller, which is a relatively new graphical program that works on both Windows and Linux that allows you to adjust various settings related to many components in your computer. We’ll learn together how to install it on Linux.

Installing Ryzen Controller on Linux

1 amd

Installing RyzenAdj

Ryzen Controller depends on a special command line utility called RyzenAdj, which is actually the main core program responsible for overclocking/adjusting the power settings of your PC’s components. You’ll need to compile RyzenAdj from source on your Linux distribution before you proceed further.

Don’t be scared: The compilation process is quite easy and quick. On Debian/Ubuntu based distributions, you’ll need to run the following command to install some build dependencies:

sudo apt-get install libpci-dev cmake gcc git

On Fedora:

sudo dnf install libpciaccess-devel git

For other distributions, just make sure that the development package related to libpci is installed.

Now, we can go ahead and compile our RyzenAdj:

git clone https://github.com/FlyGoat/RyzenAdj
cd RyzenAdj
mkdir build && cd build
cmake ..
make

If the build process was completed successfully, you should see both the ryzenadj and libryzenadj.so files under RyzenAdj/build/ folder. Just keep them there for now.

Installing Ryzen Controller

Now we can go ahead with installing Ryzen Controller. Just head to the releases page of the program and download the latest package corresponding to your distribution’s package format and install it.

On Debian-based distros, it would be:

sudo dpkg -i <path_to_downloaded_deb_file>

On Fedora-based distributions, it would be:

sudo rpm -ivh <path_to_downloaded_rpm_file>

From my testing, it seems that there’s a bug preventing from launching the program from the application menu. So in order to start the program, you’ll have to write the following command in the terminal:

sudo ryzencontroller --no-sandbox

Tweaking the Settings

After you installed the program, you now need to tell it the full path to the previous ryzenadj binary that we built in a previous step. Just head to the Settings tab, and under RyzenAdj Path, choose the path of the ryzenadj file:

3 amd

And that’s it! You can now start changing the settings of your components (clock speeds, power supply, temperature.. etc) from the other tabs that are available. Just hit “Apply” after each modification you do:

5 amd

Conclusion

We’ve seen so far how to install and configure Ryzen Controller to tweak the settings of various components in our AMD-powered machine. Officially, there’s no AMD tool that works on Linux to allow you to do the same task; “Ryzen Master” (Which is the official program from AMD to overclock the desktop-series AMD processors) only works on Windows, so you’ll have to stick to these 3rd-party solutions till things start to change.

You may also want to check whether you can overclock the RAM/CPU clocks from the BIOS of your machine (Most of them do).

.
guest
9 Comments
Oldest
Newest
Inline Feedbacks
View all comments
Goran

Thanks for the great tips!

I have a HP laptop running 2500u. I’ve set the power at 25W, VRAM at 40A and temperature limit at 85C.

But I have no idea how to tweak the rest of the settings, like STAPM Constant Time, PSI0 Current Limit, Minimum and Maximum GFX Clock Frequency and those ‘Low Impact’ and ‘Experimental’ settings.

Could you please give me a recommendation for these? I would greatly appreciate it!

Cheers!

prithvish

u can set online presets….as per my cpu i have selected highest tdp seetings and my fps has increased by 25

Goran

Ok, thanks! 🙂

Very good I am glad you achieve a high FPS! For some reason, I still don’t manage to get it as high as I see some people on YouTube do with the same APU. I am not sure what I am doing wrong lol.

pepe

Can I use this program to undervolt my Ryzen 2500U

pepe

Thanks but the idea is not to lower the tdp, in fact increase it and at the same time undervolt the cpu to have better temperatures and better performance

edgan

keep saying unable to apply ryzenadj

Your Full Linux Guide

New to Linux and the open source world? We have compiled a huge list of resources to help you go through Linux and its distributions. Visit the full Linux guide page right now.

Privacy & Security Series

Care about digital privacy and security? We have prepared a long series of important articles to secure your online privacy as a Linux and open source user. Visit the Privacy & Security Series right now.

Subscribe for $5

Instead of using your adblocker, join us now on Patreon to unlock a complete ad-free experience + access to private FOSS Post forum where many internals are discussed.

Email Newsletter

.