I'm using Fedora Kinoite and I'm looking for a way to set a global FPS limit on my system. On Windows, I could easily limit it to 60 FPS with AMD Adrenaline, which kept my GPU fans quiet unless I was gaming. However, now on Linux, I can't find a solution to achieve this. For example, when I'm just downloading a game at 4K 120Hz, my GPU fans (specifically my 9070XT) sometimes rev up to over 1000 RPM. Is there any way to do this on Linux?
4 Answers
I have an RX6700XT, and I use CoreCTRL which switches my PC into different modes like power-save, normal, or gaming. When I'm just browsing or watching stuff, I use power-save to keep my GPU fans quiet. You might want to check that out! It also lets you tweak fan speed curves, although I haven't needed to adjust mine much.
Are you using KDE? If you are, I suggest flipping to 120Hz and enabling VRR when you start a game, then switch back to 60Hz and turn off VRR when you're done. In Steam, you can set launch options to do this automatically. Just make sure to replace 'DP-1' with your display output name.
I am using KDE and I prefer Bazzite, which can separate refresh rate settings. Right now, I’m on Fedora Kinoite with a specific kernel because my display adapter needs it. But I might try installing the kernel on Bazzite.
You could just keep your display running at 120Hz all the time. Honestly, I've found that variable refresh rate (VRR) can be a bit of a hassle, so sticking with a constant refresh rate might be simpler.

That's cool! What distro are you using with CoreCTRL?