[Gentoo] CFLAGS en USE flags

Pagina: 1
Acties:

  • Sfynx
  • Registratie: Augustus 2001
  • Niet online
Ik heb een erg oude computer met een Pentium OverDrive 83 MHz processor die dienst doet als router voor het thuisnetwerk, test-FTP/HTTP server en voor andere kleine dingetjes als ik Linux even nodig heb. Ik draai hier Gentoo Linux op, en het bevalt me prima. Juist omdat deze computer nou niet bepaald 1 van de snelste is, wil ik, pietje precies als k ben, al het compileerwerk zo goed mogelijk optimaliseren. Op dit moment gebruik ik de volgende (standaard) CFLAGS en USE variabelen:

# ---------------
# Pentium/Pentium MMX+ exclusive (requires a Pentium Classic or K6 or beyond)
CHOST="i586-pc-linux-gnu"
CFLAGS="-march=i586 -O3 -pipe"
CXXFLAGS="-march=i586 -O3 -pipe"

USE="x86 3dnow apm arts avi berkdb crypt cups encode gdbm gif gpm gtk imlib
java jpeg kde libg++ libwww mikmod mmx motif mpeg ncurses nls
oggvorbis opengl pam pdflib png python qt qtmt quicktime readline sdl
slang spell ssl svga tcpd truetype X xml2 xmms xv"
# ---------------

Dit werkt goed, maar ik heb zo t gevoel dat ik hier heel wat overbodige troep meebak in de binaries. Ook hoor ik dat de -fomit_frame_pointer optie bij de CFLAGS opties voor meer snelheid zorgt en dat er nog wel meer leuke optimalisaties zijn.

Kan ik nu niet gewoon die hele USE-variabele leeggooien of zijn er dingen in de USE die gewoon echt moeten? Zijn er andere CFLAGS-opties die het nog beter compileren?

Dit is trouwens de /proc/cpuinfo van die oude bak, kan misschien handig zijn?

processor : 0
vendor_id : GenuineIntel
cpu family : 5
model : 3
model name : OverDrive PODP5V83
stepping : 2
cpu MHz : 0.000 (toch echt 83MHz, maar ok)
fdiv_bug : no
hlt_bug : no
f00f_bug : yes
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr cx8
bogomips : 33.07

toevoeging: Mijn GCC is overigens 2.95.3, de laatste Portage-'stable unmasked'-versie

Verwijderd

-march=i586 heeft gelijk alle mogelijke optimalisaties voor je processor

en dan zou je ook nog -fomit-frame-pointer en -s (strip) erbij kunnen doen, om voor jou onnodige debug informatie niet mee te compileren.

-O3 geeft de graad van optimalisatie aan

-O is geen
-O1 is meer
-O2 zijn ze zo'n beetje allemaal
-Os is als O2, maar zonder optimalisaties die de binaries vergroten
-O3 geeft grotere binaries en meer optimalisaties
vanaf -O4 is er weinig verschil meer, maar kan redelijk onstabiel worden

  • MBMarduk
  • Registratie: Februari 2001
  • Niet online

MBMarduk

BAR-baar

83MHz? Ik neem aan dat je stage1 hebt genomen aangezien die voor ix86 is. Je zal het geduld van een monnik hebben denk ik.
Ik heb eerder geprobeerd op een P200mmx maar sjeez...na een paar dagen niet eens X klaar te hebben heb ik het maar opgegeven.

Verwijderd

Je kunt sowieso gewoon op de gnu website kijken voor alle mogelijk optimalisaties voor je gcc versie.

Kijk ook eens in de FAQ van Gentoo zelf, waar een handvat gegeven wordt voor maximale optimalisaties:

http://www.gentoo.org/doc/faq.html

Verwacht overigens maar niet al te veel van dat kleine beetje optimalisatie ;)

  • intoxicated
  • Registratie: Januari 2001
  • Niet online

intoxicated

Haaaai :w | ALT-S

In je USE-flags kun je inderdaad behoorlijk snoeien. Zeker dingen als arts, avi, qt, X en dergelijke kun je in je /etc/make.conf met een minteken ervoor neerzetten in de USE-lijst. Pas wel een beetje op met dingen als de png-flags en dergelijke, misschien hebben die invloed op de werking van de GD-lib-ebuild, mocht je die in je PHP-scripts en dergelijke gebruiken.

Hier vind je een heel uitgebreide beschrijving van alle USE-flags, zodat je zelf kunt bepalen wat je wel en niet wilt hebben: The USE Variable HOWTO.

Verder is inderdaad -fomit-frame-pointer een goede optimalisatie, i.v.m. het gebruiken van een extra proc.register zou het geheel er wat sneller van moeten worden. Je kunt echter heel soms een compile-probleem tegenkomen. Zo zat er in kdemultimedia een bug waardoor het niet wou compilen met -fomit-frame-pointer. Niet dat jij KDE op je server nodig hebt, maar ik wil alleen even aantonen dat het in enkele gevallen dus problemen zou kunnen veroorzaken.

Nog een optie is om over te stappen naar 1.3a of 1.3b, deze versies gebruiken GCC3.1.1, wat ook een redelijke performancewinst met zich meebrengt. 1.4_beta wordt op dit moment op het Gentoo Forum nog afgeraden, i.v.m. problemen met ebuilds.

Nog ff wat tegen Nelske. Was die opmerking van 'dwerg' nou echt een mailtje (OW?) waard? Ok, hij zei 'RTFF', maar hij postte wel een link naar een volledig relevante thread, waarmee hij de topicstarter gewoon hielp. 'k Vind het eigenlijk een beetje overdreven.

"Anyone who does not agree with me is mentally sick, and should be shot I'm afraid to say."
- Pastor Richards @ VCPR


Verwijderd

intoxicated schreef op 26 augustus 2002 @ 21:43:
Nog ff wat tegen Nelske. Was die opmerking van 'dwerg' nou echt een mailtje (OW?) waard? Ok, hij zei 'RTFF', maar hij postte wel een link naar een volledig relevante thread, waarmee hij de topicstarter gewoon hielp. 'k Vind het eigenlijk een beetje overdreven.

Wij willen dergelijke uitlatingen niet op GoT zien en al helemaal niet in NOS :)

Gelukkig komt het in NOS zelden tot nooit voor, maar als het voor komt, dan kun je verwachten dat ik een heel stuk feller reageer, dan dat ik normaalgesproken doe.

Dergelijke reacties zijn gewoon ongewenst. Als je iets dergelijks denkt, zet dan gewoon niks neer en laat het topic voor wat het is. Dat er een link bijgegeven wordt, maakt het niet minder erg o.i.d.

Als er had gestaan dat deze vraag wel makkelijk op te zoeken was middels de verscheidene FAQ's/links op de gentoo website met daarbij een link, dan was er helemaal niks mis met de reactie.
De reactie zoals nu gegeven druist gewoon recht tegen de op GoT geldenden policy in w.b. dit soort zaken. Een policy waar ik 100% achter sta evenals mijn collegae. Overdreven is het niet, hooguit een redelijk felle reactie van mij.

Overigens wil ik nog wel even de volgende link hierbij betrekken.

Dit gaat namelijk voor zowel topicstarter op alsook voor de manier van reageren dwerg:
[rml]-=[ Nieuw in NOS? Eerst dit lezen! ]=-[/rml]

  • Wilke
  • Registratie: December 2000
  • Laatst online: 10:30
Topicstarter: de opties die je hebt in je originele post lijken mij wel okee, ik denk niet dat je Pentium erg veel gaat merken van het al of niet aanzetten van extra optimalisaties.

P.S. Nelske, ik moet zeggen dat als je hiervoor een OW uitdeelt ik dit ook nogal overdreven vind hoor, of je moet je al langer hebben lopen ergeren aan deze user ofzo, dan zou ik het me kunnen voorstellen. Als dit echter alles is, vind ik het nogal overdreven.

Mjah, just my 2 cents :)

  • intoxicated
  • Registratie: Januari 2001
  • Niet online

intoxicated

Haaaai :w | ALT-S

Verwijderd schreef op 26 augustus 2002 @ 21:52:
Gelukkig komt het in NOS zelden tot nooit voor
En daarom is dit ook mijn favoriete forum :)

Er viel me opeens nog wat op. Topicstarter, jij postte hier een aantal USE-flags. Stonden die flags in je /etc/make.conf? Tegenwoordig is het namelijk anders bij Gentoo. De standaard USE-flags staan in een defaults-file en in je make.conf geef je alleen wijzigingen aan (dus -gnome als je geen Gnome-support wilt of 'dvd' als je DVD-support wilt). Gebruik je een oude versie van Gentoo?

"Anyone who does not agree with me is mentally sick, and should be shot I'm afraid to say."
- Pastor Richards @ VCPR


Verwijderd

Jongens als jullie het niet eens zijn met het beleid of mijn modereeracties dan is er Lieve Adjes :)

Een OW is slechts een waarschuwing; geen straf o.i.d. :)

Gelieve een nieuw topic erover te openen of gewoon ontopic hier verder te gaan. :)

  • intoxicated
  • Registratie: Januari 2001
  • Niet online

intoxicated

Haaaai :w | ALT-S

Verwijderd schreef op 26 augustus 2002 @ 22:18:
Jongens als jullie het niet eens zijn met het beleid of mijn modereeracties dan is er Lieve Adjes :)
't Was verder geen kritiek op jou in het algemeen, maar over dit specifieke geval. Verder ben ik het altijd wel met de mods eens hoor. Maar goed, een LA-topic open ik niet, da's verder dwerg's zaak. En nu houden we er in deze thread idd maar over op :)

"Anyone who does not agree with me is mentally sick, and should be shot I'm afraid to say."
- Pastor Richards @ VCPR


Verwijderd

RTFF is voor mij een normale reactie, daarmee bedoelde ik gewoon 'lees de handleiding, daar staat het in'. Het was niet een reactie uit irritatie.

  • wzzrd
  • Registratie: Februari 2000
  • Laatst online: 24-05 21:44

wzzrd

The guy with the Red Hat

USE="x86 3dnow apm arts avi berkdb crypt cups encode gdbm gif gpm gtk imlib
java jpeg kde libg++ libwww mikmod mmx motif mpeg ncurses nls
oggvorbis opengl pam pdflib png python qt qtmt quicktime readline sdl
slang spell ssl svga tcpd truetype X xml2 xmms xv"
Denk dat je dat stukje 3dnow er wel uit kunt laten op je pentium :) 3DNow! is AMD specifiek.

Verwijderd

Verwijderd schreef op 27 augustus 2002 @ 22:13:
RTFF is voor mij een normale reactie, daarmee bedoelde ik gewoon 'lees de handleiding, daar staat het in'. Het was niet een reactie uit irritatie.
duh!

soms klinken dingen gewoon puur negatief terwijl je het niet zo bedoelt. in dit geval is dat bijvoorbeeld zo. RTFF zou overigens geen normale reactie moeten zijn :)
Pagina: 1