diff --git a/systemd/mpd.service.in b/systemd/mpd.service.in index 65fffa7bb..a72eb925c 100644 --- a/systemd/mpd.service.in +++ b/systemd/mpd.service.in @@ -5,5 +5,18 @@ After=network.target sound.target [Service] ExecStart=@prefix@/bin/mpd --no-daemon +# allow MPD to use real-time priority 50 +LimitRTPRIO=50 +LimitRTTIME=-1 + +# move MPD to a top-level cgroup, as real-time budget assignment fails +# in cgroup /system/mpd.service, because /system has a zero real-time +# budget; see +# http://www.freedesktop.org/wiki/Software/systemd/MyServiceCantGetRealtime/ +ControlGroup=cpu:/mpd + +# assign a real-time budget +ControlGroupAttribute=cpu.rt_runtime_us 500000 + [Install] WantedBy=multi-user.target