Without compact, LILO loads the kernel and initrd with one BIOS call per
each disk block. It seems that certain BIOSes impose a pretty heavy
penalty per BIOS call, when booting. It can literally take a minute, or
more, for the kernel and initrd to load. Meanwhile, LILO prints a dot at a
leisurely pace of one every other second, or so.
Most of the culprits seem to be SCSI controller onboard BIOSes. A
Supermicro P6DGU motherboard is rather slow, without the "compact" option,
but it's not too bad. An Asus P2DS motherboard is pretty bad, when booting
off a SCSI disk (an IDE boot seems to be reasonable). Using the "compact"
option with LILO cuts down the kernel load time from about 45 seconds to
less than a second. Same thing with an ABIT BP6 motherboard. It takes
about a minute to load the kernel image off the SCSI disk without the
compact option. Running "lilo -v -v" with the compact option shows that
almost 1500 BIOS calls have been eliminated, resulting in an instant boot -
less than a second to load both the kernel image and initrd.
I think the installer should write the "compact" option to lilo.conf when
the boot disk is a SCSI disk hooked up via an Adaptec chipset. I've never
had any problems whatsoever with the compact option with Adaptec chipset
Marked as a future feature request.