Re: Tuning the system for jackd
Hello!
> I'm re-styling the demudi tasks packages, which I'd like to upload to
> Debian in the near future. One of them it's called demudi-config and
> it's haevily based on the debian-edu-config package. It uses cfengine
> to customize configuration files in a consistent manner.
>
> As already discussed, we are going to drop the demudi specific version
> of the jack package, and rely on the debian one.
>
> I was wandering about which tunings are needed to the enhance the
> performance of jackd, and whether they should be accomplished through
> the demudi-config task or directly with jackd.
>
> The ones that come to my mind are:
>
> 1) Turn on low latency:
>
> echo 1 > /proc/sys/kernel/lowlatency
using /etc/sysctl.conf is nicer than this.
> This assumes a patched 2.4 kernel, which AFAIK is not the case of
> the official Debian kernel.
True. Are you going to upload the DeMuDi Kernel to Debian?
> I don't know whether the 2.6 series need such tuning too..
There are now lowlatency patches (in this form) for 2.6. There is
PREEMPT and in the ck-patches there is a very interesting isochronous
scheduling mode.
> 2) Setuid the jackstart binary. This can be accomplished via
> dpkg-statoverride (as suggested in the README.Debian of jackd), but
> I'm not sure whether the best solution is:
Why don't you all subscribe to the jack-audio-connection-kit package on
<http://packages.qa.debian.org/j/jack-audio-connection-kit.html>?
JACK (>= 0.94.0-2) does contain jackstart setuid root, executable by
group audio.
dpkg-statoverride is only if you want to _override_ permissions.
> a. Add debconf support to the jackd package and ask a question, for
> example "Do you want jackstart setuid?", if the the answer is
> positive the postinst script takes care of running
> dpkg-statoverride. In this case the demudi-config package would
> just inject the appropriate value in the debconf database.
>
> b. Do a. but through the demudi-config package, maybe without the
> question, as we assume a positive answer.
>
> c. Do not setuid the jackstart binary, but rather prepare a 2.6
> kernel for DeMuDi (I'm assuming that Debian is not going to adopt
> such patch in the short term), using the Jack O'Quin's kernel
Someone should just _package_ that module!
> module. The demudi-config package could make sure that such module
> is loaded in the correct way and ask which users should belong to
> the audio group.
>
> 3) Mount /tmp as a tmpfs, adding the line
>
> none /tmp tmpfs defaults 0 0
>
> to fstab. Again this can be accomplished both inside demudi-config
> and inside jackd and I'm not sure which place is better.
Also done. libc6 >= something-ds11 mounts a shmfs onto /dev/shm. JACK
(>= 0.94.0-2) puts its files there.
> 4) Write a ~/.asoundrc file (for users in the audio group). I don't
> know if this is really necessary, but it can be accomplished by
> demudi-config.
No. I don't think it's necessary. jackd defaults to hw:0, which makes
sense.
Robert.
--
Reply to: