Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Gentoo GCC-Compiler Einstellungen

Tipp Entwicklung

Mitglied: Frank

Frank (Level 5) - Jetzt verbinden

28.08.2009, aktualisiert 24.10.2009, 9553 Aufrufe, 2 Danke

Für alle Gentoo-User die das Maximum an Performance aus Ihrem System holen wollen. Mehr geht nicht.

Hallo Gentoo User,

seit der GCC-Compiler Version 4.2.x gibt es die neue "-march=native" Optimierung für die CFLAGS. Einfach in der /etc/make.conf die Variable CFLAGS="-O2 -pipe" erweitern. Beispiel:
01.
Datei: /etc/make.conf 
02.
CFLAGS="-march=native -O2 -pipe" 
03.
CXXFLAGS="${CFLAGS}"
Bisher konnte man mit "-march" festlegen, welche Optimierung im GCC für die CPU aktiviert werden (MMX, SSE and SSE2 Instruction-Set etc.). Beispiele:
01.
CFLAGS="-march=i686 -O2 -pipe" für normale i686 CPU (z.B. Pentium etc. auch "generic" genannt) 
02.
CFLAGS="-march=nocona -O2 -pipe" für die neuen Xeons mit 64 Bit 
03.
CFLAGS="-march=opteron -O2 -pipe" für den Opteron
Anders jetzt mit "-march=native". Diese Einstellung ermittelt automatisch den Prozessortyp und seine "Instruction-Set". Damit lässt sich ein optimales Ergebnis beim Kompilieren erzielen. Der einzige Nachteil, der für mich keiner ist, die so kompilierten Programme laufen auch wirklich nur auf dem eigenen Rechner.

Das sagt das GCC-Handbuch dazu:
"-march=native" This selects the CPU to tune for at compilation time by determining the processor type of the compiling machine. Using -mtune=native will produce code optimized for the local machine under the constraints > of the selected instruction set. Using -march=native will enable all instruction subsets supported by the local machine (hence the result might not run on different machines).

Hier ein paar Fragen und Antworten zu GCC und Gentoo:

Welche GCC-Version benutzt mein Gentoo-System gerade?
01.
gcc -v 
02.
oder 
03.
gcc-config  -l (das mit dem Stern dahinter ist der aktuelle GCC-Compiler)
Wie aktualisiere ich eigentlich den GCC unter Gentoo?
01.
emerge --sync  
02.
emerge -av gcc
Ich habe den neuen GCC mit "emerge -av gcc" erfolgreich kompiliert, aber "gcc -v" zeigt mir immer noch die alte Version an?
01.
Bei Gentoo musst Du das GCC-Profil bzw. Version selbst auswählen. Automatisch wird nicht auf die neue GCC-Version umgeschaltet! 
02.
Einfach "gcc-config  -l" aufrufen und es erscheint nun die Liste der verfügbaren GCC-Versionen auf Deinem System (das sind meine Versionen): 
03.
 [1] x86_64-pc-linux-gnu-4.1.2 
04.
 [2] x86_64-pc-linux-gnu-4.3.2 * 
05.
 
06.
Jetzt kannst Du mit "gcc-config  1" oder "gcc-config  2" die GCC-Versionen wechseln. 
07.
Danach noch ein "source /etc/profile" ausführen und zur Kontrolle "gcc -v".
Wer danach sein ganzes System neu kompilieren will, kann das mit "emerge -e system" machen. Aber Achtung, der Vorgang dauert sehr, sehr lange (hängt von der Leistung Deiner CPU ab).

Hier noch die wichtigsten Links zum Thema:

Gentoo GCC-Aktualisierungsanleitung
GCC-Handbuch Seite zum Thema "-mtune=cpu-type"
GCC 4 (GNU Compiler Collection) CFLAGS für x86 und x86-64 CPU

Viel Spaß beim Kompilieren

Gruß
Frank
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Erkennung und -Abwehr
Lokale Virenprüfstation : Windows 10: Ändern von Einstellungen verhinden (5)

Frage von TryAndSolve zum Thema Erkennung und -Abwehr ...

Microsoft Office
Proxy-Firewall Einstellungen in Excel? (4)

Frage von BlueShadow9 zum Thema Microsoft Office ...

Tipps & Tricks
gelöst O+O ShutUp 10: Welche Einstellungen wurden vorgenommen? (6)

Frage von honeybee zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Microsoft Office
Keine Updates für Office 2016 (13)

Frage von Motte990 zum Thema Microsoft Office ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...