a better comparison
Posted Oct 7, 2003 21:31 UTC (Tue) by
torsten (guest, #4137)
In reply to:
a better comparison by mattdm
Parent article:
Gentoo Weekly Newsletter
"Is it really the optimization that's causing the speed increase, or is it some other factor?"
While gentoo is famous for its ability to optimize everything, automagically, this is not the factor in load times. What they mentioned in the article is "prelinking", which was originally developed as a technique for glibc-2.3.X, whereby the libraries needed for an executable are "prelinked" and don't have to be resolved at runtime. Basically, the path of the library is stored in the executable. This way, the location of the library doesn't need to be resolved at run time, decreasing load times. If the libraries don't change locations much, it works well. If the libraries do change location, then the program needs to be relinked. If the location of the library is incorrect, then the library loader defaults back to the normal, non-optimized behavior.
The technique was developed at RedHat, as a way to increase KDE load times. Prelinking is a little more complicated than this, and I have difficulty deciphering the website text.
From http://freshmeat.net/projects/prelink/?topic_id=253
prelink is a program which modifies ELF shared libraries and ELF dynamically linked binaries, so that the time which dynamic linker needs for their relocation at startup significantly decreases and also due to fewer relocations the run-time memory consumption decreases too (especially number of unshareable pages). Such prelinking information is only used if all its dependent libraries have not changed since prelinking, otherwise programs are relocated normally.
(
Log in to post comments)