Ich kann nicht genügend Informationen finden, um zu entscheiden, welchen Compiler ich verwenden soll, um mein Projekt zu kompilieren. Es gibt mehrere Programme auf verschiedenen Computern, die einen Prozess simulieren. Unter Linux verwende ich GCC. Alles ist wunderbar. Ich kann Code optimieren, er kompiliert schnell und verwendet nicht so viel Speicher.Was ist der Unterschied zwischen Sjlj vs Zwerg vs seh?
Ich mache meine eigenen Benchmark mit MSVC und GCC-Compiler. Später erzeugt man etwas schnellere Binärdateien (für jede Unterarchitektur). Obwohl Kompilierzeit viel mehr als MSVC ist.
Also entschied ich mich, MinGW zu verwenden. Sie können jedoch keine Erklärungen zu Ausnahmebehandlungsmethoden und ihren Implementierungen in MinGW finden. Ich kann verschiedene Distributionen für verschiedene Betriebssysteme und Architekturen verwenden.
Überlegungen:
- Compile Zeit und Speicher sind für meine Nutzung nicht wichtig. Wichtig ist nur die Laufzeitoptimierung. Ich brauche meine Programme, um schnell genug zu sein. Ein langsamer Compiler ist akzeptabel.
- Betriebssystem: Microsoft Windows XP/7/8/Linux
- Architektur: Intel Core i7/Core 2/und eine sehr alte i686 läuft XP: P
Ich bin überrascht, gcc schnellen Code als MSVC erzeugt; Die Dinge müssen sich in den letzten Jahren verändert haben ... – trojanfoe
@trojanfoe Mir wurde schon so oft gesagt, MSVC statt MinGW zu benutzen. Jeder denkt, msvc ist schneller! Ich habe MinGW 7.2 und MSVC 2010 mit einem einfachen CPU-Burst-Programm getestet. Auf Corei7 mit '-O3 -mtune = corei7' GCC ist 45% schneller als MSVC –
In meiner eigenen Erfahrung, mit einem Schachzug-Generator (der Bitboards verwendete), waren sowohl MSVC als auch Intel C++ 10% schneller als gcc, aber das war Vor 2 Jahren ... – trojanfoe