This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [libstdc++ PATH] tr1::bind support


On Tue, 22 Mar 2005 10:01:57 +0000, Chris Jefferson <caj@cs.york.ac.uk> wrote:
> Douglas Gregor wrote:
> >
> > On Mar 21, 2005, at 6:55 PM, Chris Jefferson wrote:
> >
> >> Can I just query how long other people are finding programs take to
> >> compile with tr1::bind?
> >
> >
> > Longer than I'd hoped :(
> >
> >> I might have applied the patch incorrectly, as I have a different
> >> version of <tuple> locally, but I'm finding simple files from the
> >> testsuite (such as tr1/6_containers/tuple/tuple_size.cc), and in fact
> >> anything that contains either <functional> or <tuple> is taking over
> >> 30 seconds to compile! (1.4Ghz machine, 512MB ram).
> >
> >
> > I'm getting about 20 seconds per compile, on a slightly faster machine,
> > but still an issue. I believe that the problem might actually be in
> > preprocessing, because, e.g. bind_iterate.h gets included about 400
> > times :) It's possible that we'll want to preprocess the sources (say,
> > at configure time) to see if that helps.
> >
> 
> I tried preprosessing, which produced a 3.9M file.. it still takes >20
> seconds to compile. However, once I pursaded pre-compiled headers to
> work, while the resulting files was 52M(!!) now it compiles in < 1 sec,
> so when/if everyone is using precompiled headers, the problem will be
> allieviated somewhat. I still think it might be nice to pull the
> functional header apart a bit...

This much of a difference may be worth investigating with a profiled gcc.
I doubt there will be any low-hanging fruit, but nobody knows...

Richard.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]