← Back to team overview

sslug-teknik team mailing list archive

Re: Rekompilere system for bedre performance, f.eks. glibc

 

On Sun, Mar 28, 2004 at 07:55:16PM +0200, Kenneth Ahn Jensen wrote:
> Jeg har ændret en linie i /usr/src/RPM/SPECS/glibc.spec:
> BuildFlags="$BuildFlags -DNDEBUG=1 -O2 -finline-functions -g"
> -til at indeholde dette:
> BuildFlags="$BuildFlags -mcpu=pentium3 -O2 -pipe -finline-functions
> -fomit-frame-pointer -g"
> Det er vist det eneste - og så starter jeg byggeprocessen med:
> rpmbuild -bb --target i686-linux glibc.spec
Hvorfor har du fjernet -DNDEBUG=1? Det buildflag fortæller formentlig
glibc at det skal kompilere uden debug sektionerne. 

Derudover, hvis man kigger i gentoo's glibc-ebuild, så fjerner de
-fomit-framepointer, hvis der er nogen der har den i deres make.conf.
Dvs. gentoo's glibc bliver ikke oversat med -fomit-frame-pointer (det er
også en dårlig ide, hvis du en dag ville debugge et program).
Derudover fjerner de også -finline-functions hvis den er med i flagene.
Plus at de låser glibc til at blive kompileret med -O2 (for -O3 slår
automatisk -finline-functions til). Så umiddelbart ville jeg mene at du
var ude på dybt vand ;-)

-pipe gør ikke noget specielt, andet end at hvis du har hukommelse nok,
så går kompileringen hurtigere, fordi asm-koden der kommer ud af
C-oversætteren bliver pipet direkte ind i assembleren, istedet for at
den skal ned og vende i en temporær fil.

-- 
/-----------------------------------------------------\
| Klaus S. Madsen      | "Failure is not an option... |
| ICQ: 45400164        |  It comes bundled with your  |
| www.hjernemadsen.org |  Microsoft products!"        |
\-----------------------------------------------------/


Follow ups

References