Re: A question regarding pump mode

Fergus Henderson <[email protected]> Mon, 14 Nov 2011 20:30:48 -0800
Newsgroups gmane.comp.compilers.distcc
Message-ID <CAPXkjd-OEc9pQrzDRbuVzVP6YJD_bCepW17tNe87T+Wy6XdhnA@mail.gmail.com>
On Sat, Nov 12, 2011 at 10:59 AM, Tian Fang <[email protected]> wrote:

> Hi,
>
> Come cross this wonderful tool, distcc with the pump mode. Have a
> quick question on the implementation of the pump mode.
>
> My understanding of one purpose of include server is to find out the
> include files for each source code to be distributed. include server
> implements its own parser to preprocess the source files to get the
> list of files. Wondering why not using the -M opt provided by the
> compiler instead of writing the new parser. Appreciate someone could
> share some reason behind this design.
>

The point of pump mode is to distribute the preprocessing.
Using the -M option of the compiler implies running preprocessing locally.
Using pump mode's include server can be much more efficient than
preprocessing locally,
because it caches the results across multiple compiles within a build,
processing each included file only once, rather than once for every time it
is included.
For large builds this typically results in a significant speed-up,
averaging at about a factor of two speed-up if you have sufficient distcc
servers available.

Cheers,
  Fergus.

-- 
Fergus Henderson <[email protected]>

"Defend the user, exclude no one, and create magic." -- Eric Schmidt.

__
distcc mailing list            http://distcc.samba.org/
To unsubscribe or change options:
https://lists.samba.org/mailman/listinfo/distcc