This is the mail archive of the mailing list for the glibc 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]

Re: shared library loading performance and prelinking

Robert Schweikert <rjschwei at abaqus dot com> writes:

> Andreas,
> When I set LD_DEBUG on SuSE 7.3, which I tried before I only get the
> following information,
> 24194:	                 number of relocations: 46819
> 24194:	      number of relocations from cache: 68032
> and
> 24205:	                 number of relocations: 47853
> 24205:	      number of relocations from cache: 81387
> our app has 2 processes, no time information is printed. I already tried
> to change the way we bind, NOW vs. LAZY by changing the way we call
> dlopen but the change in performance between NOW and LAZY was very
> small.

A glibc compiled for i686 will have the extra timing information.

> Another interesting thing I noticed is that the number of relocations is
> only printed when the process starts, i.e. the initial set of shared
> objects is loaded. Loading subsequent shared objects does not produce
> debug print. This means that for more than half of the shared objects I
> cannot get information on the number of relocations.

Yes, this information is not available.

> Also you mentioned that SuSE 8.1 has glibc 2.3.2, did you mean the
> upcomming SuSE 8.2 release? We just installed SuSE 8.1 on a machine and
> glibc was still 2.2.5.

Yes, I meant the upcoming 8.2 release.

 Andreas Jaeger
  SuSE Labs aj at suse dot de
   private aj at arthur dot inka dot de

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