This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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]

Some useless but fun performance numbers on 'gold'


Since I have been working on testing gold in various scenarios (kernel, various
open source applications, commercial applications, ...) I decided to do a quick
comparison between installing the Oracle DB using the old GNU ld linker and the
new gold linker.  Since I was only interested in the timing data concerning the
linker invocations, I wrote a tiny 'ld' wrapper script that does the following:

-----------------------------------------------------> snip
#!/bin/sh

(
  echo "====" 1>&2
  echo "/usr/bin/ld ${argv}" 1>&2

  time /usr/bin/ld-real --threads ${argv}
) 2>> /tmp/ld.stats
-----------------------------------------------------> snip

I then processed the logged linker invocations, simply adding up the timing
numbers for real, user and sys.  This was done in a 4 CPU SMP EL5.2 HVM guest
with 4GB RAM.  Of course, the difference in timings is what I was interested
in, rather than the absolute values:

Timing		GNU ld		  gold
------		------		------
real		82.600		29.841
user		26.032		11.600
sys		10.976		 5.076

Overall, that turns out to be a pretty nice performance increase.  It might
be useful to note that 136 linker invocations occured in both scenarios.

Thanks to everyone who has thus far been involved with gold...

	Cheers,
	Kris


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