[LLVMdev] RFC: Upcoming Build System Changes
clattner at apple.com
Tue Nov 1 16:40:10 PDT 2011
On Nov 1, 2011, at 4:33 PM, Óscar Fuentes wrote:
> greened at obbligato.org (David A. Greene) writes:
>> Joachim Durchholz <jo at durchholz.org> writes:
>>> On the reasons why make-based builds are slow, Peter Miller has some
>>> insight to offer:
>>> http://miller.emu.id.au/pmiller/books/rmch/ .
>>> I'm not sure how widely recognized that paper is. Maybe it's widely
>>> known and today's build times stem from other things than recursive make.
>> The paper is widely recognized. Its lessons, unfortunatly, are not.
>> Chris is absolutely on-target as to why the current build is slow. It's
>> slow because recursive make hides the parallelism. It hides the
>> parallelism because it hides the dependencies. There is no way to get
>> around that problem with a recursive make build system.
> You keep repeating that and I say that it is wrong. Can you mention a
> serialization point on the LLVM build caused by recursive make?
> (GenLibDeps is not such example, as described on a previous message.)
Any use of DIRS is a serialization point. For example, lib/Support -> lib/TableGen -> utils are all built in serial before anything else is.
More information about the llvm-dev