gnu c++ vs vs2010



  • hallo,

    ich weiß nicht wie der compiler von visual studio 2010 heißt deswegen nenn ich ihn einfach mal vs2010.

    ich habe ein programm mit beiden compilern erstellt. der unterschied ist enorm.

    das erstelle vs2010 programm ist 1 sekunde schneller und hat nur 1/10 der größe von dem gnuc++ erstellen file.

    105kb // vs2010
    1015kb // gnuc++

    ist der compiler von vs2010 wirklich so viel besser 😮 ?



  • kantaki schrieb:

    ist der compiler von vs2010 wirklich so viel besser 😮 ?

    Nicht unbedingt. Es kommt vor allem auf die Optimeirungsstufe an, die du beim Übersetzen eingestellt hast. Im Debugmodus kannst du über Geschwindigkeiten und Programmgrößen keine sinnvollen Vergleiche machen.



  • Den GCC unter Windows gestet, richtig?

    Denn die Größe lässt sich ganz einfach dadurch erklären, dass MSVC per Default die C- und die C++-Standardbibliothek dynamisch linkt (Deswegen braucht man auch die Runtimes), während MinGW das statisch macht.
    Lässt sich aber auch umstellen.

    Und wenn du Performance testest, übergib bitte mal '-O3' dem GCC als Flag.



  • kantaki schrieb:

    das erstelle vs2010 programm ist 1 sekunde schneller

    Wie ist denn die Gesamtlaufzeit?



  • Dieser Thread wurde von Moderator/in pumuckl aus dem Forum C++ (auch C++0x) in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Hallo,

    das sieht mir nach einem Troll-Versuch aus.

    _matze schrieb:

    kantaki schrieb:

    das erstelle vs2010 programm ist 1 sekunde schneller

    Wie ist denn die Gesamtlaufzeit?

    1,1 s 😃

    Mal im ernst. Eine glaubhafte Aussage benötigt neben der gemessenen Ausführungszeit
    - Beschreibung des Testaufbaues / Umgebung
    - Source-Code mit dem der Versuch durchgeführt
    - alle nötigen Informationen, um den Test 1zu1 nachbauen zu können

    Gruß, Thomas



  • Und mal wieder ein paar "Fakten":
    MSVC ist besser an Windows angepasst, produziert meist kleinere Executables (auch mit Statischer Linkage) und optimiert AFAIK ein bisschen besser als MinGW.
    MinGW unterstützt C++11 besser, man kann seine Programme damit noch ein bisschen einfacher auf Linux portieren, auch sollte man zum Testen -s und mindestens -O2 (weil das für produktive Systeme meistens verwendet wird) verwenden.


Anmelden zum Antworten