Tuning the system for jackd
Hi all,
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
This assumes a patched 2.4 kernel, which AFAIK is not the case of
the official Debian kernel.
I don't know whether the 2.6 series need such tuning too..
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:
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
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.
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.
Nothing more comes to my mind by now..
Cheers,
Free
Reply to: