This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: LD_DEBUG=statistics and hp timing
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Jack Howarth <howarth at bromo dot med dot uc dot edu>
- Cc: libc-alpha at sources dot redhat dot com
- Date: Wed, 25 Sep 2002 15:13:20 +0200
- Subject: Re: LD_DEBUG=statistics and hp timing
- References: <200209251254.IAA82323@bromo.msbb.uc.edu>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Wed, Sep 25, 2002 at 08:54:26AM -0400, Jack Howarth wrote:
> In testing prelinking on ppclinux, I finally got Geoff's old
> ppc-hp-timing patch working on glibc 2.2.94. However I am somewhat
> puzzled by the details of its output. For example, if I create a
> directory that is empty, cd into it and do...
>
> LD_DEBUG=statistics ls
>
> ...I get...
>
> 03601:
> 03601: runtime linker statistics:
> 03601: total startup time in dynamic loader: 38935 clock cycles
> 03601: time needed for relocation: 17614 clock cycles (45.2%)
> 03601: number of relocations: 139
> 03601: number of relocations from cache: 5
> 03601: time needed to load objects: 17394 clock cycles (44.6%)
> 03601:
> 03601: runtime linker statistics:
> 03601: final number of relocations: 204
> 03601: final number of relocations from cache: 5
>
> ..where normally any listed files from the 'ls' command would appear
> before the second runtime linker section. What puzzles me is why
> the number of relocations differs from the final number of relocations.
> I assume the first set of numbers reflect only relocations done in the
> dynamic loader. Does the second set include relocations done elsewhere?
> Thanks in advance for any clarifications.
The first set is after the whole program and all libraries it depends on
are relocated during startup, the second numbers include
lazy binding relocations and relocations done because of dlopen too.
Jakub