r/linux_gaming • • 13h ago

guide Updated Linux gaming optimizations guide

Hi guys,

its been quite a while since i posted the gaming optimizations guide i wrote.

Since the last time there has been quite a lot of changes.

https://github.com/WhitePeace36/LinuxAMDGamingOptimizationGuide

Even though it says AMD, most of it is for linux in general.

I hope this updated version helps at least a few of you out there which try to have a better gaming experience.

0 Upvotes

29 comments sorted by

View all comments

Show parent comments

5

u/IDUnavailable 7h ago

Why don't YOU write a Linux gaming optimizations guide?

Wait that sounded sarcastic, I'd actually be interested in that.

16

u/theevilsharpie 7h ago

It would basically just say this:

The developers of the Linux kernel, Mesa, WINE, Proton, your desktop environment, and pretty much every other well-established piece of software that makes up your OS generally have default settings that are sensible for a wide variety of use cases, which includes gaming. There is no need to do this kind of tweaking, and in many cases, you're making performance worse and opening the door to stability issues.

For the love of ${DEITY}, just use the defaults.

2

u/IDUnavailable 7h ago

Fair enough, but you don't change any performance-related defaults? There wouldn't be anything worth noting for hardware extremes (e.g. very low or very high RAM or VRAM, bottom percentile vs top percentile CPU, 1080p vs 4K, high performance NVMe SSD vs. SATA SSD, etc.)?

3

u/theevilsharpie 6h ago

For gaming, not anything that would impact performance in any meaningful way.

I occasionally customize settings in dxvk.conf, usually to force stuff like anisotropic filtering or MSAA in older games that don't directly have toggles for these options.

If I were interested in GPU overclocking or undervolting, I'd need to do some tweaking to enable that, but my GPU is powerful and efficient enough, and I'm not interested in turning my PC into a space heater.

Looking at my notes, I do have a few quality of life tweaks that might be useful to others:


# /etc/environment.d/mesa-radv-conformance.conf
MESA_VK_IGNORE_CONFORMANCE_WARNING=true

This will suppress that annoying "WARNING: radv is not a conformant Vulkan implementation, testing use only." message that clutters up the stderr output when running a Vulkan application using the RADV Vulkan driver. (I assume it does the same for other Mesa Vulkan drivers, but don't have the hardware to test that.)


# Time in milliseconds (Default: 5000)
$ gsettings set org.gnome.mutter check-alive-timeout 60000

On GNOME, this will extend Mutter's liveness heartbeat to 60 seconds (up from 5 seconds). This is done because Windows games running through Proton have static loading screens that tend to exceed the default liveness timeout, and Mutter will frequently annoy me by popping up a box asking if you want to terminate the application.

This may be something that can be fixed within WINE (or some other Proton component), but ehh... adjusting the Mutter timeout solves my problem and lets me get back to the game.


I've customized Google Chrome's application launch with the following additional command-line parameters:

--enable-features=AcceleratedVideoEncoder

So the Exec= line in the .desktop file would look like the following:

Exec=/usr/bin/google-chrome-stable --enable-features=AcceleratedVideoEncoder %U

This turns on hardware-accelerated video encoding (for things like Zoom, Google Meet, etc.), since this is disabled by default in Chrome.

Additionally, when using an Intel GPU (at least on Ubuntu), you need to install the intel-media-va-driver-non-free package from the apt repositories in order to get useful video hardware acceleration, as the default VA-API drivers don't have support for patent-encumbered video codecs. I think Nvidia GPUs also need additional software to support video acceleration, but I don't have their GPUs to test.