Boottime/ReduceBoottime

From openSUSE

see also Boottime/Boot_time Boottime/Fast_boot

In order to find ways to reduce the boot time I changed various knobs and did bootcharts of the results. Most of the tries and knobs changing didn't reduce boot time at all.

One thing that reduced the boot time about at least 22% was the fcache kernel patch from Jens Axboe. It's the perfect solution regarding the cutback of harddisk seek operations, downside of it is, that it needs an extra partition to do the caching.

A similar effect, without the need for an extra partition, can be expected from Jan Kara's ext3 block remapper, that I haven't tested yet.

For a look at the boot process of Ubuntu and their SysV init replacement see Ubuntu_and_Upstart.


The system the following bootcharts were done with was a Compaq nw8440, I did a default (new) installation of openSUSE 10.3 alpha 3plus with GNOME and no autologin; local users and IP via DHCP.

Contents

RUN_PARALLEL

Same system as described above.

startpar(8) is used to run multiple run-level scripts in parallel, its appliance can be switched on/off by setting the RUN_PARALLEL variable in /etc/sysconfig/boot to yes or no.

RUN_PARALLEL="yes" RUN_PARALLEL="no"
Boottime 1 1:00 1:06
Boottime 2 1:00 1:02
Boottime 3 1:00 1:02
average boottime 1:00 1:03
Bootcharts thump thump

Maybe we can find some more use cases for startpar or tune parameters.

I wrote a script to visualize the depencies of the boot process. Get it from /suse/fruell/Export/bdg or mail to fruell at suse dot de.

Preload

Preload loads librarys, like for gnome or kde, during boot into memory. I disabled it by deinstalling the preload-package.

preload 0.2.-62

Same system as above. - Some general hints: The preload config for GNOME was outdated, see Bug 237120.

with preload without preload
Boottime 1 1:04 0:54
Boottime 2 1:02 0:54
Boottime 3 1:04 0:55
average boottime 1:03 0:54
Bootcharts thump thump

preload-0.2-74

with preload without preload
Boottime 1 0:48 0:53
Boottime 2 0:48 0:54
Boottime 3 0:46 0:52
average boottime 0:47 0:53
Bootcharts thump thump

fcache

Same system as above. As described in the Fcache-howto, I commented in /etc/init.d/boot.rootfsck the line that causes partitions to be "remount[ed] in any case to apply additional options" and used the additional boot parameter ro.

without autologin

default Kernel with fcache-patch (not enabled) with fcache-patch (priming) with fcache-patch (not priming)
Boottime 1 1:00 1:03 1:48 0:47
Boottime 2 1:03 1:02 1:43 0:46
Boottime 3 0:58 1:02 1:45 0:47
average Boottime 1:00 1:02 1:45 0:47
Bootcharts thumps thumps thumps thumps

with autologin

This time with autologin and an autostarting gnome-terminal.

default Kernel with fcache-patch (not enabled) with fcache-patch (priming) with fcache-patch (not priming)
Boottime 1 1:08 1:12 2:11 0:49
Boottime 2 1:11 1:10 2:45 0:49
Boottime 3 1:11 1:23 2:24 0:52
average Boottime 1:10 1:15 2:27 0:50
Bootcharts thump thump thump thump

Notice, it looks like the kernel with the fcache patch would boot a bit slower than the one without.

other devices than hd for fcache

Usb Stick / Usb 2.0 reader and SD-Card or CompactFlash as fcache

devices are way slower than average HD and fcache eliminates most seek operations anyway - thus I haven't done bootcharts.

Robson technology, "TurboMemory"

flash hd cache as found in the Santa Rosa series. No Hardware available to test.

ext3 block remapper

Stephan Kulow did automate it. With the ext3 remapper it took 32 seconds for him to boot to a Konsole in KDE. Without ext3 remapper it took 40 seconds. For comparision booting the same system with fcache took 24 seconds.

Resources