E4RAT - Improving Startup Times by Physical Block Reallocation

Table of contents

e4rat ("Ext4 - Reducing Access Times") is a toolset to accelerate the boot process as well as application startups. Through physical file realloction e4rat eliminates both seek times and rotational delays. This leads to a high disk transfer rate.

Placing files on disk in a sequentially ordered way allows to efficiently read-ahead files in parallel to the program startup. The combination of sequentially reading and a high cache hit rate may reduce the boot time by a factor of three, as the example below shows.

e4rat is based on the online defragmentation ioctl EXT4_IOC_MOVE_EXT from the Ext4 filesystem, which was introduced in Linux Kernel 2.6.31. Other filesystem types and/or earlier versions of extended filesystems are not supported.

The following boot charts shows the boot process of an freshly installed Debian Squeeze. The process includes the startup of the Gnome desktop and the Iceweasel browser. The computer is equipped with a E8200 Intel CPU and a Western Digital WD2500YS-01S hard drive with a total size of 250 GB. At the time of the experiment, only three percent of the entire filesystem were in use.