Okay so it’s been a year and I still haven’t written that post…
It’s going to be a long one, so while I keep putting it off for later, I’ll give a quick summary of what works in terms of performance for me:
Certainly helpful
- Disable kernel modesetting
- Install nvidia drivers, especially ones newer than in Debian 13 repos
- Fix your thermals (hardware, PTM pads, sealed laptop cooling pads, water cooling)
- Fix your thermals (software, reduce CPU load, get VMs off of P-cores)
- Pin your gaming VM to p-cores
- Pin all your other VMs to e-cores
- Reduce core counts for your other VMs
- Increase credit2-weight of your gaming VM (only useful under heavy system load)
- Disable display compositing in dom0
- Disable VSync in games
- Pass your NVME/SSD partition directly to your gaming qube. If using NTFS, use the new NTFS driver in linux (
ntfs3) instead of the old one, which still gets used as the default when mounting. - Don’t try using 4K, unless you have a beast of a GPU and CPU. Keep to 2K or 1080p.
- Experiment with
xenpmpower management - Use vulkan shader pre-caching (Steam)
Possibly helpful
- Reduce SSD writes (volatile journal, volatile /tmp and ~/.cache)
- Set
noatimefor most of your filesystems - Disable unneeded systemd services
- Use zram
- Don’t use high polling rates for your gamepad (maybe also mouse/keyboard)
- Use the Wine virtual desktop (or Gamescope, if you can make it work)
- Keep vCPU0 in the gaming VM for IRQs, not the game processes
Some of the tweaks can be applied with the help of my scripts: GitHub - Atrate/qubes-utils: Meta-repo to provide links to Qubes utilities I've written · GitHub
(@neowutran you mentioned you’d like to be notified)