add audio-rt module to fight xruns under cpu load

EasyEffects DSP plugins (rnnoise, deepfilternet, crystalizer) drop audio
when the system is under load. Layered workaround with per-optimization
toggles for bisecting impact:

- cgroup-based CPU partitioning: dedicated audio.slice with AllowedCPUs
  pinning, restricted app/session/background slices for everything else
- rlimits so PipeWire's module-rt sets SCHED_FIFO 88 directly instead of
  going through RTKit's priority-10 ceiling
- persistent watcher that re-applies performance governor on audio cores
  (gamemoded/PPD keep resetting it)
- ananicy rule pinning easyeffects to nice -12 for non-RT DSP threads
- znver4-tuned rebuilds of easyeffects and its DSP deps

Master switch + per-feature toggles via lumpiasty.audioRt.*; all enabled
by default on acer host. None of this fully eliminates dropouts on this
thermally constrained laptop but each layer is independently testable.
This commit is contained in:
2026-05-18 17:19:04 +02:00
parent 9ea6bac4af
commit c9e6ec7b23
5 changed files with 250 additions and 2 deletions
+1
View File
@@ -71,6 +71,7 @@ rec {
amdCpu = true;
noMitigations = false;
enablePulseaudio = true;
audioRt.enable = true;
sshd = true;
users.user = true;
# users.drugi = true;