The Problem: There's no shortage of people who have a great idea about how to speed up the build. They have all sorts of reasons why their pet idea will let you complete a five day build in 3.8 seconds. For example, the gcc compiler has the -pipe option. Normally the compiler will run the first pass of the compiler and write the output to a temporary file. Then pass 2 will read this file and write a second temporary. And so on for however many passes are needed. With the -pipe option every pass is run at the same time the output of one connected to the input of the next through a pipe. The theory is that by doing this you eliminate the temporary file, the disk I/O for the temporary file and do everything in memory. So the -pipe option must make things faster. And if we needed more convincing we can take a look at the kernel Makefiles and find that the option is used there and if the Linux kernel uses it, then it must be good.
The Problem: There's no shortage of people who have a great idea about
how to speed up the build. They have all sorts of reasons why their pet idea will
let you complete a five day build in 3.8 seconds.
For example, the gcc compiler has the -pipe option. Normally the
compiler will run the first pass of the compiler and write the output to a
temporary file. Then pass 2 will read this file and write a second temporary. And
so on for however many passes are needed.
With the -pipe option every pass is run at the same time the output of one
connected to the input of the next through a pipe. The theory is that by doing
this you eliminate the temporary file, the disk I/O for the temporary file and do
everything in memory.
So the -pipe option must make things faster. And if we needed more
convincing we can take a look at the kernel Makefiles and find that the option is
used there and if the Linux kernel uses it, then it must be good.
Step by step
Solved in 3 steps