[distcc] A question regarding pump mode

Fergus Henderson fergus at google.com
Mon Nov 14 21:30:48 MST 2011


On Sat, Nov 12, 2011 at 10:59 AM, Tian Fang <tfang.ca at gmail.com> 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 <fergus at google.com>

"Defend the user, exclude no one, and create magic." -- Eric Schmidt.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.samba.org/pipermail/distcc/attachments/20111114/128df586/attachment.html>


More information about the distcc mailing list