Schlechte Performanceleistung von C++-Programm



  • Hallo,
    ich habe ein einfaches Programm geschrieben, das geometrische Figuren berechnet und darstellt. Die Ausgabe erfolgt provisorisch über den cout-Befehl (echte 2000-Pixelgrafik 🤡 ). Wenn nun beispielsweise zwei Würfel animiert werden, dann ist mein Rechner (PIII 900MHz) erstaunlicherweise zu 30% ausgelastet!
    An den Algorithmen für Berechnung und Darstellung liegt es jedenfalls nicht – die habe ich nach langem Ringen optimiert.

    Kann es sein, dass der cout-Befehl so rechenintensiv ist?
    Oder liegt es an dem Compiler (in meinem Fall MingW)?

    Irgendetwas ist jedenfalls faul, erinnere ich mich doch noch, wie schön damals Quake auf meinem P75 mit 8MB Hauptspeicher lief – und in Quake wurde wahrlich mehr animiert als nur zwei Würfel…



  • Alexander Rahm schrieb:

    Kann es sein, dass der cout-Befehl so rechenintensiv ist?

    jup. um genau zu sein die konsolenausgabe, egal ob per cout, printf, putch oder WriteFile oder sonstewas.



  • Verwende doch "WriteConsoleOutput" oder am besten Du arbeitest mit unterschiedlichen "Screen buffers", dann ist es rasend schnell...
    Siehe: SetConsoleActiveScreenBuffer


Anmelden zum Antworten