Boost logo

Boost :

From: Ralf W. Grosse-Kunstleve (rwgk_at_[hidden])
Date: 2003-10-01 23:37:49


--- David Abrahams <dave_at_[hidden]> wrote:
> Dave Gomboc <dave_at_[hidden]> writes:
>
> >> Here at Transversal we recently came upon the problem of
> >> really slow link times...
> > [snip]
> >> ...90% of the time was
> >> spent merging the strings of debug constants...
> > [snip]
> >> So we hacked gcc to add a new option which disables this
> >> merging. It took our link times for our python bindings from
> >> 20mins (on a dual 1Ghz Athlon with 1G ram) to just over 4s, a
> >> 300x improvement!
> >
> > Specifying -fwritable-strings will cause GCC to not attempt to merge
> > string literals et al. Does that work for your situation?
> >
> > Yes, GCC's constant string merge algorithm is O(n^2).
>
> Maybe we should add -fwritable-strings for GCC in Boost.Build unless
> <optimization>size is set?

In my experience the links are slow only if -g is used. I think it should be
sufficient to add -fwritable-strings only for debug builds.
Ralf

__________________________________
Do you Yahoo!?
The New Yahoo! Shopping - with improved product search
http://shopping.yahoo.com


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