[LAU] limits.conf nice rtprio

Ralf Mardorf ralf.mardorf at alice-dsl.net
Thu Aug 17 15:17:47 UTC 2017


Hi,

I guess the nice values are null and void, IOW IIUC they don't affect
anything [1], at least for cosmetical reasons remove it from your
limits.conf. If you fear that something could become unresponsive, you
could decrease "rtprio 99" to a lower value. I never did it myself, but
some users do so.

To optimize real-time performance you should start with using Rui's
script rtirq [2]. There are other things to improve real-time
capability, often setting the cpu frequency scaling governor to
performance improves a lot [3]. There are additional useful
opportunities, e.g. unbinding USB devices that share an IRQ with the
audio device could be helpful, but a lot of hints provided by the
Internet are plain nonsense. The most important thing to consider is
choosing the appropriate kernel. For some tasks it's useful to build a
rt patched kernel [4]. The so called "lowlatency" kernels provided by
Ubuntu flavours gains you more or less nothing. If you should use a
mainline kernel, simply add "threadirqs" to the boot parameters, for
syslinux it does look like e.g. this

$ grep thread /boot/syslinux/syslinux.cfg -B1 -A1
LABEL Threadirqs
    MENU LABEL Arch Linux ^threadirqs
    LINUX ../vmlinuz-linux
    APPEND root=LABEL=archlinux ro threadirqs
    INITRD ../initramfs-linux.img

I prefer using real-time patched kernels. If you should use external
MIDI equipment there are other things to consider, too, special jackd
settings, e.g. for jack 2 the "-X alsarawmidi" switch and that using USB
MIDI much likely does cause much more MIDI jitter compared to game port
MIDI and PCI/PCIe MIDI.

Regards,
Ralf

[1]
"Contrary to a lot of misinformation on the web, there is no reason to
include a line here that provides enhanced “niceness” control, which is
completely irrelevant for realtime scheduling and low latency audio
applications." - http://jackaudio.org/faq/linux_rt_config.html

[2]
http://www.rncbc.org/jack/

[3]
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor >/dev/null

To see the status run

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

to get back "powersave" or "ondemand" run

echo powersave | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor >/dev/null
     ^^^^^^^^^
resp. replace "powersave" with "ondemand"

[4]
https://www.kernel.org/pub/linux/kernel/projects/rt/


More information about the Linux-audio-user mailing list