I realise this may be considered a form of heresy, but I am attempting to get jack running with a dummy backend on Ubuntu 18.04 under windows subsystem for linux 2 (WSL2). Remarkably this does actually work. However, only if I execute jack as
root (i.e. using sudo) can it obtain permissions for real-time scheduling, which is not ideal.
I think I have all the normal Ubuntu settings in place but don’t know what differences might exist between normal Ubuntu and the version that exists with WSL2.
$ perl ./realTimeConfigQuickScan.pl
== GUI-enabled checks ==
Checking if you are root... no - good
Checking filesystem 'noatime' parameter... 4.19.104 kernel - good
(relatime is default since 2.6.30)
cat: /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu5/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu6/cpufreq/scaling_governor: No such file or directory
cat: /sys/devices/system/cpu/cpu7/cpufreq/scaling_governor: No such file or directory
Checking CPU Governors... CPU 0: '' CPU 1: '' CPU 2: '' CPU 3: '' CPU 4: '' CPU 5: '' CPU 6: '' CPU 7: '' - not good
Set CPU Governors to 'performance' with 'cpupower frequency-set -g performance' or 'cpufreq-set -c <cpunr> -g performance' (Debian/Ubuntu)
Checking swappiness... 60 - not good
** vm.swappiness is larger than 10
Set swappiness by adding 'vm.swappiness=10' to /etc/sysctl.conf and rebooting
Checking for resource-intensive background processes... none found - good
Checking checking sysctl inotify max_user_watches... >= 524288 - good
Checking access to the high precision event timer... not found - not good
/dev/hpet not found.
Checking access to the real-time clock... not found - not good
/dev/rtc not found (perhaps create a symlink?).
Checking whether you're in the 'audio' group... yes - good
Checking for multiple 'audio' groups... no - good
chrt: failed to set pid 0's policy: Operation not permitted
Checking the ability to prioritize processes with chrt... no - not good
Could not assign a 80 rtprio SCHED_FIFO value. Set up limits.conf.
Checking kernel support for high resolution timers... found - good
Kernel with Real-Time Preemption... not found - not good
Kernel without 'threadirqs' parameter or real-time capabilities found
Checking if kernel system timer is high-resolution... found - good
Checking kernel support for tickless timer... found - good
== Other checks ==
Checking filesystem types... ok.
** Set $SOUND_CARD_IRQ to the IRQ of your soundcard to enable more checks.
Find your sound card's IRQ by looking at '/proc/interrupts' and lspci.