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