GCC optimieren
- Hackmeck
- Beiträge: 1397
- Registriert: 22.10.2002 19:14:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Düsseldorf
-
Kontaktdaten:
GCC optimieren
Gibt es unter Debian die Möglichkeit gcc bei jedem Aufruf ohne Angabe weiter Parameter für eine bestimmte Prozessorplattform zu optimieren?
Wenn ja, wo geht das und welche Optionen sind bei einem Pentium-III-System sinnvoll?
Wenn ja, wo geht das und welche Optionen sind bei einem Pentium-III-System sinnvoll?
- Savar
- Beiträge: 7174
- Registriert: 30.07.2004 09:28:58
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Berlin
ja gibt es über Variablen.. leider weiß ich grad nicht wie die alle heißen (CCFLAGS usw.)
auch wenn ich mir heiße Ohren holen könnte.. schau mal bei der Installationsanleitung von "Gentoo" nach.. da werden die gebraucht und da weißt du wo du was setzten musst/kannst!!
Da dürftest du auch wissen welche Prozessoren welche Flags abhaben können..
hier die Seite von Gentoot:
http://www.gentoo.org/doc/de/handbook/h ... #doc_chap5
auch wenn ich mir heiße Ohren holen könnte.. schau mal bei der Installationsanleitung von "Gentoo" nach.. da werden die gebraucht und da weißt du wo du was setzten musst/kannst!!
Da dürftest du auch wissen welche Prozessoren welche Flags abhaben können..
hier die Seite von Gentoot:
http://www.gentoo.org/doc/de/handbook/h ... #doc_chap5
- pdreker
- Beiträge: 8298
- Registriert: 29.07.2002 21:53:30
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Nürnberg
Die Variablen heissen "CFLAGS" für gcc und "CXXFLAGS" speziell für g++. Wenn Du die irgendwo so setzt, dass die global im Environment stehen, sollten die eigentlich überall genutzt werden, aber beachte, dass manche Pakete diese Variablen (meistens aus mehr oder weniger wichtigen Gründen) überschreiben bzw. ignorieren (Kernel z.B.).
Du solltest es auch nicht mit den Optionen übertreiben... -march und -mcpu sind meistens noch OK, in den meisten Fällen ist -03 auch noch OK, aber vieles, was darüber hinausgeht ist der Stabilität eher abträglich (vom konservativen Standpunkt aus gesehen, der besagt: Wenn's mit den normalen Optionen läuft, warum was ändern...?).
Der Performancezuwachs liegt eher im Placebo Bereich: Man glaubt es wäre schneller, aber der Zuwachs beträgt nur 2-3%, was definitiv nicht spürbar ist...
Patrick
Du solltest es auch nicht mit den Optionen übertreiben... -march und -mcpu sind meistens noch OK, in den meisten Fällen ist -03 auch noch OK, aber vieles, was darüber hinausgeht ist der Stabilität eher abträglich (vom konservativen Standpunkt aus gesehen, der besagt: Wenn's mit den normalen Optionen läuft, warum was ändern...?).
Der Performancezuwachs liegt eher im Placebo Bereich: Man glaubt es wäre schneller, aber der Zuwachs beträgt nur 2-3%, was definitiv nicht spürbar ist...
Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de
Jabber: pdreker@debianforum.de
- Hackmeck
- Beiträge: 1397
- Registriert: 22.10.2002 19:14:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Düsseldorf
-
Kontaktdaten:
Danke schon mal für die Antworten!
Unter http://www.gentoo.org/doc/de/handbook/h ... #doc_chap5 steht, daß bei Gentoo diese Dinge in /etc/make.conf geschrieben werden, wenn man sie dauerhaft global einrichten möchte. Diese Datei gibt es unter Debian allerdings nicht.
Wie kann ich diese Optimierungen in /etc/environment eintragen?
Unter http://www.gentoo.org/doc/de/handbook/h ... #doc_chap5 steht, daß bei Gentoo diese Dinge in /etc/make.conf geschrieben werden, wenn man sie dauerhaft global einrichten möchte. Diese Datei gibt es unter Debian allerdings nicht.
Wie kann ich diese Optimierungen in /etc/environment eintragen?
Ganz einfach:Hackmeck hat geschrieben:Wie kann ich diese Optimierungen in /etc/environment eintragen?
Code: Alles auswählen
CCFLAGS="..."
CXXFLAGS="..."
- Hackmeck
- Beiträge: 1397
- Registriert: 22.10.2002 19:14:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Düsseldorf
-
Kontaktdaten:
Also ich glaube so richtig verstanden habe ich es noch nicht. Geht es so in /etc/environment?
Code: Alles auswählen
CHOST="-i686-pc-linux-gnu"
CCFLAGS="-march=pentium3 -O3"
CXXFLAGS="-march=pentium3 -O3"
Code: Alles auswählen
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium3 -O3"
CXXFLAGS="-march=pentium3 -O3"
- Hackmeck
- Beiträge: 1397
- Registriert: 22.10.2002 19:14:02
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Düsseldorf
-
Kontaktdaten:
Ah, Danke!tig hat geschrieben:so =)Code: Alles auswählen
CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium3 -O3" CXXFLAGS="-march=pentium3 -O3"