[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: kde an objprelink



On Sun, Sep 16, 2001 at 01:46:50PM +0200, Maximilian Reiss wrote:
> Is somebody up to build kde WITH objprelink from now on?
> Sadly I do not have the webspace where I could supply them 
> as external apt source.
> 
> I also use KDE on computers slower then 300 Mhz and would really 
> like to have kde start in 10 seconds on them, not 43 seconds. ;-)


this was sent off to me..and I have spent time consulting with our binutils
maintainer as well as doing tests of my own.

---

"On Sun, Sep 09, 2001 at 11:57:32AM -0400, Jack Howarth wrote:
> Jakub,
>    HJ told me that your work on the prelinker
> set to eventually be adopted into Linux. I ask
> because debian has started to use objprelink
> for now.

If you ask me, I think it is a bad decision.
objprelink means slightly slower execution time even where it really doesn't
buy anything. Also, at least in the version which is floating around
e.g. the ia-32 stub is too long and inefficient.
Also, with objprelink they have to muck with all packages.

If debian wants good startup speeds, then I think the no1 thing is to use
recent binutils (and on arches where it works enable -z combreloc by
default).
Together with current glibc, already doing just this speeds startup of large
KDE programs a lot, the symbol lookup is the most expensive thing (together
with unnecessary COW) and glibc's lookup cache together with -z combreloc
hits a lot:

LD_DEBUG=statistics kmail
14751:
14751:  runtime linker statistics:
14751:    total startup time in dynamic loader: 226875015 clock cycles
14751:              time needed for relocation: 223635459 clock cycles (98.5%)
14751:                   number of relocations: 24432
14751:        number of relocations from cache: 45710
14751:             time needed to load objects: 2969083 clock cycles (1.3%)

Also, these binutils already reserve .dynamic entries for prelink, so
rebuilding everything with this is really worthy." 

  --- Jakub Jelinek


Debian's binutils already usine -z combreloc (or will with the next release
acording to the binutils maintainer).   glibc's changes will be taken care
of with the next major release of glibc (after woody's release).

And to set something straight, KDE does not recommend using objprelink.  Some
folks within KDE do, however objprelink has caused problems in certain
situations.  

Ivan
-- 
----------------
Ivan E. Moore II
rkrusty@tdyc.com
http://snowcrash.tdyc.com
GPG KeyID=90BCE0DD
GPG Fingerprint=F2FC 69FD 0DA0 4FB8 225E 27B6 7645 8141 90BC E0DD



Reply to: