This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [patch] ld speedup 1/3 (suffix merge)
- From: Lars Knoll <lars at trolltech dot com>
- To: davidm at hpl dot hp dot com, David Mosberger <davidm at napali dot hpl dot hp dot com>, Michael Matz <matz at suse dot de>
- Cc: Alan Modra <amodra at bigpond dot net dot au>, <binutils at sources dot redhat dot com>
- Date: Wed, 10 Sep 2003 10:36:00 +0200
- Subject: Re: [patch] ld speedup 1/3 (suffix merge)
- Organization: Trolltech
- References: <20030909150800 dot GU1443 at bubble dot modra dot org> <Pine.LNX.4.44.0309091743500.13736-100000@wotan.suse.de> <200309100654.h8A6suCA010653@napali.hpl.hp.com>
On Wednesday 10 September 2003 08:54, David Mosberger wrote:
> [Lars, I mistyped your email address in the original mail. Sorry about
> that.]
No problem, I'll have a short look at the archives :)
> >>>>> On Tue, 9 Sep 2003 18:06:06 +0200 (CEST), Michael Matz <matz at suse
> >>>>> dot de> said:
>
> Michael> One of those changes was using a non-quadratic string
> Michael> suffix merge, patch is below. The result looks like so
> Michael> (binutils compiled without optimizations, time for linking
> Michael> libqt.so, assistant and designer, ld.cvs is the ld as it
> Michael> falls out of CVS HEAD, ld.strmerge is CVS with the below
> Michael> patch):
>
> By coincidence, I ended up profiling ld on ia64 kernel builds tonight
> and (fortunately), I saw your post before spending time to try to
> improve performance myself. The results below are for a largish
> kernel, with debugging & kallsyms enabled (i.e., kernel gets actually
> linked 3 times):
>
> original (CVS) ld: with your patch applied:
>
> real 1m18.043s real 0m30.134s
> user 1m15.440s user 0m25.248s
> sys 0m1.643s sys 0m1.756s
>
> Me likee. ;-)
>
> The resulting profile is still very lopsided (30% of time is spent in
> sec_merge_hash_lookup), so there may be more opportunities to speed
> things up, but your patch alone helps a great deal.
That's the second patch Michael and I did on the KDE meeting. We'll post a
patch for that as well.
Cheers,
Lars