This is the mail archive of the
mailing list for the binutils project.
Re: -Bdirect linking patch
- From: michael meeks <michael dot meeks at novell dot com>
- To: Ulrich Drepper <drepper at redhat dot com>
- Cc: binutils <binutils at sources dot redhat dot com>
- Date: Thu, 10 Nov 2005 17:32:57 +0000
- Subject: Re: -Bdirect linking patch
- References: <firstname.lastname@example.org> <email@example.com>
- Reply-to: michael dot meeks at novell dot com
On Fri, 2005-10-28 at 07:30 -0700, Ulrich Drepper wrote:
> michael meeks wrote:
> > So - I have an evily hackish prototype for glibc & binutils that gives
> > me a really nice speedup with relocation processing. It's inspired by
> > the Solaris -Bdirect feature of the same name, and is implemented in the
> > same way - by adding a section containing a 16bit word per .dynsym entry
> > with an index into the libraries DT_NEEDED table, built at library link
> > time.
> Forget it, we have prelinking, which is much more efficient.
Just wondered if you'd had some time to re-consider this. I had hoped
the 'gettimeofday' measurements across my calls to glibc 'dlopen' would
be slightly convincing; I re-did them with a more complete set of markup
the results are:
Normal: 2.693, 2.721, 2.714 - Avg. 2.709 ~3 seconds
-Bdirect: 0.675, 0.679, 0.682 - Avg: 0.679 ~1/2 second
ie. this makes the work done by dlopen for OO.o a factor of ~4 faster;
and cuts the OO.o startup time in half.
Is there any way you'll contemplate just discussing including this
feature in glibc ? and/or - are you aware of some better method that I
can persue instead ? [ prelinking is not useful here ].
firstname.lastname@example.org <><, Pseudo Engineer, itinerant idiot