Adding new information about improving performance.
Lately I am maintaining a small wiki of things I learned about while trying to maximize my gaming experience here: https://github.com/AdelKS/LinuxGamingGuide
I would like to update this wiki page with information from there. For starters I would like to write about two things that can make quite the difference: Futex2 & Fastsync/winesync (brought by TKG in linux-tkg and wine-tkg) and something I called the "cpuset trick" (c.f. the Github link)
Everyone okay with this ?
- This is a very late answer and I can't speak for everyone, but from my point of view this is ok. Just put the information towards their respective articles and reference it from here if it is relevant for gaming. If it applies for gaming in general just put it here. If it improves performance in general, put it into the Improving Performance page. Also references towards good documentation and benchmarks are helpful and appreciated. -- LukasF (talk) 23:15, 6 October 2022 (UTC)
- Correctly integrating the guide would take a decent amount of effort, since the guide touches so many different parts of the system. For now I have just added it to the "See also" section, but it would be cool to see something more ambitious some day. -- CodingKoopa (talk) 00:43, 7 October 2022 (UTC)
Tuning PulseAudio → PipeWire
Is any of the information in this section applicable for PipeWire? (E.g., PipeWire#Sound quality (resampling quality) suggests a different approach for "Using higher quality remixing for better sound" in this article.)
- A new section for PW would be appropriate here, since there are PW-specific configurations.. PA is not deprecated, so there's not a need to get rid of any of that content. With that said, try to keep general PW advice out of this article, and lean on the actual PW article as much as possible, via intrawiki linking. Thanks, CodingKoopa (talk) 06:39, 2 May 2022 (UTC)
Recommend enabling THP?
In the paragraph Gaming#Tweaking_kernel_parameters_for_response_time_consistency there is a recommendation to disable THP because it has the possibility to introduce jitter according to . With the article being from 2015 and the recently new MGLRU it might not be applicable any more. Would it be sensible to enable THP and keep defragmentation disabled for good throughput and avoiding latency? Do you have information on this? -- LukasF (talk) 09:02, 25 December 2022 (UTC)
- Sounds like it might need to be benchmarked. MangoHud produces frame time graphs and stats that can be used to check for microstutters. -- CodingKoopa (talk) 14:16, 25 December 2022 (UTC)
- I ran a few benchmarks: . After one initial warm up run (for shader cache) each game was benchmarked only once. There is a lot of possibility that this is not accurate or representative yet (3 games, ran once). Having said that for me this looks like we can't make the usage of THP a general recommendation for response time consistency yet. Mangohud didn't work on Shadow of the Tomb Raider, but it would produce more detailed results. Maybe I will come to it at a later time and get more accurate data. LukasF (talk) 23:13, 11 January 2023 (UTC)
Remove or clarify references to RT kernels under "Improving performance"
Currently, the performance section of this page mentions using a real time kernel. While it does specifically say that it is for response time consistency, having it under the performance section is leading people to blindly install RT kernels thinking that it will give them better gaming performance in some way, which is extremely far from reality. The mention of a RT kernel for gaming should be removed or moved to its own section that clarifies what a RT kernel actually does and that it is not the correct kernel for the vast majority of users, gamers included.
https://www.reddit.com/r/linux_gaming/comments/bhq0il/does_using_a_realtime_kernel_make_any_difference/ https://ubuntu.com/blog/what-is-real-time-linux-i https://stackoverflow.com/questions/22241264/what-makes-a-kernel-os-real-time
- I made some changes. Now it still mentions the realtime kernel, but it should be more realistic about it. I think it makes sense to still leave the mention of the realtime kernel, since in specific circumstances it is the only solution to guarantee bounded response times. This is not your average gaming workload though, but it is relevant if you want to be able improve response time consistency to the maximum. Please let me know what you think. -- LukasF (talk) 14:02, 6 September 2023 (UTC)
EEVDF scheduler changes
Linux 6.6 might include the EEVDF scheduler as the new default scheduler replacing CFS (see Phoronix ). Once EEVDF lands, there might be some changes necessary to the scheduler recommendations. More info:  EDIT: its confirmed for linux 6.6  -- LukasF (talk) 14:34, 6 September 2023 (UTC)