Here you will find links to precompiled kernel RPMs with the low latency
patch applied which will save you from the boring (and sometimes a bit
complicated) task of patching and recompiling your kernel.
Please bookmark this page because we will post new lowlatency kernels as soon
as they become available.
WARNING: the 2.2.15/16/17 kernel RPMs , although they can provide 3-5msec latencies, they won't achieve
same performance as the original 2.2.10
See the testresults
These nasty spikes are present in 2.2.15, 2.2.16, 2.2.17 while 2.2.10 was able to deliver 2.1msec, but had the problem of instability.
So until the Ingo's 2.4 patch is finished, I'd suggest you to use 2.2.17
Yeah, 5msec is probably fine for many apps and more than Windows and Mac can do right now,
but the goal will be to retain these 2msec latencies on kernel 2.4 too.
So that realtime multimedia software (audio/video) will deliver the same latencies
as dedicated Hardware.
Stay tuned !
Notice that the kernels below are compiled for uniprocessor because
Ingo's patch does not improve latencies on SMP sytems yet.
So if you have an SMP box and want good latencies, you have to use an
UP kernel. (The kernels below will work on an SMP machine, but you will
see only 1 CPU)
For maximum performance you have to tune all your IDE disks (see below)
Thanks to Udo Jocher (udo@udoj.org) which took the original Redhat kernel src.rpms and applied Ingo's low latency patch.
The kernels (both rpm and src.rpm) are available on this local rpmfind website:
Kernels for Redhat 6.x:
use the 2.2.17 RPMs because (because it fixed some bugs present in 2.2.15 and 2.2.16
kernel 2.2.17-low-latency for i686
kernel 2.2.17-low-latency for i586
kernel 2.2.16-low-latency for i686
kernel 2.2.16-low-latency for i586
kernel 2.2.15-low-latency for i686
kernel 2.2.15-low-latency for i586
HOW TO INSTALL AND RUN THESE KERNELS ?
The kernels above are the redhat kernels, and on other distributions it is probably
better to use a plain kernel and apply the low latency separately.
If someone makes Suse RPMs or Debian DEBs of the 2.2.x-low-latency kernel.
Please let me know (send mail to sbenno@gardena.net) so that I can link them here.
If you are a newbie which is not familiar with Lilo (the bootloader) then here is a short tutorial which will allow you to install/run the kernel within a few minutes:
- download the low latency kernel RPM (i586 for Pentiums and clones, i686 for newer machines)
- as root type:
rpm -i nameofyourkernel.rpm(eg. rpm -i kernel-2.2.17-1LL.i686.rpm )
mkinitrd /boot/initrd-2.2.17-1LL.img 2.2.17-1LL(makes the initrd which is needed to load SCSI drivers etc at boot time)
now edit /etc/lilo.conf and add something like this:
image=/boot/vmlinuz-2.2.17-1LL
label=2.2.17lowlat
initrd=/boot/initrd-2.2.17-1LL.img
read-only
root=/dev/hda3
notice that the root= argument has to be the same as the one of your original kernel (it tells from which partition to but the system)
at this point you are almost done:
type:
liloand you will see something like this:
.. Added 2.2.17lowlat ..
now reboot and at the LILO prompt press the SHIFT key,
digit 2.2.17lowlat and press return
the 2.2.17 lowlatency kernel will boot now
Don't forget to tune all your IDE disks (if you have any) with hdparm:
hdparm -d 1 -c 1 -u 1 /dev/hda( repeat for hdb,hdc and hdd if you have more than one disk)
Problems:
a few modules cause "unresolved symbol messages".
The modules
are NFS and ipmasq related so these two features will probably not
work on the lowlatency kernel
if you want to know more about latency and cutting edge audio on Linux, please visit our linux-audio-dev homepage at www.linuxdj.com/audio/lad
enjoy !
Benno
sbenno@gardena.net