Linux From Scratch - Version 7.5-systemd-rc1

Chapter 4. Final Preparations

4.5. About
SBUs

Many people would like to know beforehand approximately how long it
takes to compile and install each package. Because Linux From Scratch
can be built on many different systems, it is impossible to provide
accurate time estimates. The biggest package (Glibc) will take
approximately 20 minutes on the fastest systems, but could take up to
three days on slower systems! Instead of providing actual times, the
Standard Build Unit (SBU) measure will be used instead.

The SBU measure works as follows. The first package to be compiled
from this book is Binutils in Chapter 5.
The time it takes to compile this package is what will be referred to
as the Standard Build Unit or SBU. All other compile times will be
expressed relative to this time.

For example, consider a package whose compilation time is 4.5 SBUs.
This means that if a system took 10 minutes to compile and install
the first pass of Binutils, it will take approximately 45 minutes to build this
example package. Fortunately, most build times are shorter than the
one for Binutils.

In general, SBUs are not entirely accurate because they depend on
many factors, including the host system's version of GCC. They are
provided here to give an estimate of how long it might take to
install a package, but the numbers can vary by as much as dozens of
minutes in some cases.

Note

For many modern systems with multiple processors (or cores) the
compilation time for a package can be reduced by performing a
"parallel make" by either setting an environment variable or
telling the make
program how many processors are available. For instance, a Core2Duo
can support two simultaneous processes with:

export MAKEFLAGS='-j 2'

or just building with:

make -j2

When multiple processors are used in this way, the SBU units in the
book will vary even more than they normally would. Analyzing the
output of the build process will also be more difficult because the
lines of different processes will be interleaved. If you run into a
problem with a build step, revert back to a single processor build
to properly analyze the error messages.