Boost logo

Boost :

From: Pavel Vozenilek (pavel_vozenilek_at_[hidden])
Date: 2003-09-14 12:44:43


"Beman Dawes" <bdawes_at_[hidden]> wrote

...
> A "hello iostream world" program rebuild (which does a clean first) took
> less than one second. Adding #include <boost/config.hpp> still produced
> rebuild times less than a second. Even with 100 config.hpp includes,
> rebuild time was still less than a second. I assume these results reflect
> XP's caching of config.hpp and its dependencies.
>
> If I understand your experience, adding 100 includes of config.hpp to one
> of your programs would serious slow the build time by some amount of time
> that is significant - several seconds if not a lot more - and scales up as
> the number of includes are increased.
>
> My guess is that for your builds something is defeating the operating
> system's file caching. Perhaps:
>
"Hello World" is not representative. Everything stays in cache and working
set is small.

Compiling large translation unit may eat hundreths MB of RAM and
<config.hpp> woudn't be kept in system cache. Reloading it and its
dependencies is what slows compilation down, together witch CPU cache
misses.

Intel C++, in release mode, is example of such hungry compiler.

/Pavel


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk