GCC 3.3 compile speed regression - AN ANSWER

Matt Austern austern@apple.com
Tue Feb 11 00:55:00 GMT 2003


On Monday, February 10, 2003, at 04:47  PM, Alan Modra wrote:

> On Mon, Feb 10, 2003 at 11:31:15PM +0000, Neil Booth wrote:
>> Joel Sherrill wrote:-
>>
>>> Has anyone looked at how much the binutils contribute to the end to
>>> end performance question?  gas is involved in every compile and ld is
>>> involved in every program link.  I just don't recall it every being
>>> mentioned.
>>
>> Oohhh.  Is this a serious attempt at passing the buck?  8-)
>>
>> (No, this post isn't serious and doesn't really merit a response).
>
> Heh.  In certain cases, ld indeed spends considerable time attempting 
> to
> merge strings.  See 
> http://gcc.gnu.org/ml/gcc-bugs/2003-01/msg01403.html

Broad generalization, based on the numbers I've looked at: for the kinds
of C++ projects that Apple cares the most about, the vast majority of 
time
is spent in cc1plus.  as is in the noise.  ld can take a lot of time 
for a
large multi-file project, but, of course, the compiler will also take a 
lot
of time if you're compiling a lot of files.  The case where ld overhead 
is
interesting: you've got a huge project, you've already built it, you 
change
one or two source files, and you run 'make' again.

In other words: we aren't off the hook.  The slow part of compiling is 
the
compiler.
			--Matt






More information about the Gcc mailing list