This is the mail archive of the 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: gcc compile-time performance

> I don't think we're doing users any favor by adopting an arrogant view,
> saying that we should buy the last fastest computers just to be able to
> use GCC in a decent maner.

Well of course you have a different criterion for "decent manner". The
first version of GNAT was developed on a 25MHz 486 note book with a
miserably slow disk, and a bootstrap tool several hours. I found 
it perfectly decent (incidentally the claim that GCC over the years
has taken about a constant amount of time to bootstrap seems quite
absurd to me, I see a rapid and continued decrease, today that bootstrap
that took several hours now takes less than ten minutes).

It is much harder than you think to retrofit speed to a compiler. Sure you
can do some investigation work, and try to be more careful about adding
stuff that slows down GCC, but this is likely at best to improve things
by 20-40% if you are realistic. All this rhetoric about third world countries
and poor schools is not at the 20-40% level. I just don't believe that you
are likely to be in a situation where a 20-40% improvement is going to make
the difference in such environments, and if it is, then that 20-40% 
improvement corresponds to perhaps 4 months of hardware improvement, and
that is true *across* the board. The "useless" 17-month old hand me down
computers also get faster at this rate.

It's not at *ALL* that I don't think fast compilers are valuable. In the
case of Realia COBOL, a huge effort was put in to make this the fastest
production level compiler in the world, and that effort succeeded. It was
indeed a pleasure to work on a 25MHz 386, and have a compiler that could
bootstrap itself in less than a minute (that was about 120,000 lines of
COBOL). But you can manage with far slower compilers. The first Ada
compiler I worked on took many days to build itself, and still we made
good progress. 

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