Typ: Tutorial
Artikel Name: gprof unter Windows
Autor: monta
Beschreibung: Tool zur Laufzeitanalyse und Profiling
Gprof liefert detaillierte Angeben über Aufrufe und Laufzeiten von den im Programm aufgerufenen Funktionen. Somit erlaubt es rückschlüsse darauf, welche Teilbereiche der Anwednung ggf. optimiert werden sollten.wikipedia hat geschrieben:Als Profiler werden Programmierwerkzeuge bezeichnet, die das Laufzeitverhalten von Software analysieren. Es gibt unterschiedliche Problembereiche in der Softwareentwicklung, die durch ineffiziente Programmierung ausgelöst werden. Ein Profiler hilft dem Entwickler durch Analyse und Vergleich von laufenden Programmen die Problembereiche aufzudecken. Daraus kann man Maßnahmen zur strukturellen und algorithmischen Verbesserung des Quellcodes ableiten.
Folgende Schritte sind dazu nötig:
- Einkompilieren der benötigten Informationen und Bibliotheken in die ausführbare Datei
- normales Starten der Anwendung
- beim Beenden der Anwendung werden die Profiling-Informationen in die gmon.out geschrieben
- durch aufruf von gprof wird aus der gmon.out der entgültige Bericht geschrieben
Die in folgendem Archiv enthaltenen Bibliotheken entstammen dem cygwin-Projekt und sind nötig, um eine ausführbare Datei mit gprof-Unterstützung zu erstellen.
http://www.lazarusforum.de/downloads.ph ... tail&id=24" onclick="window.open(this.href);return false;
(Benötigt werden: libcygwin, libgcc, libgmon, libkernel32, libuser32)
Damit der FPC die Bibliotheken findet müssen sie entweder direkt in den Sourcepfad gelegt werden oder (besser) gibt man den Quellpfad der Bibliotheken entsprechend an:

[Alternativ, wenn man gprof öfter verwenden will, und nicht jedesmal den Pfad eintragen möchte, kann man auch eine entsprechende Zeile in die fpc.conf eintragen, welche auf den Speicherort der Bibliotheken verweist:
-Fl bei mir: -FlE:\FPC\gproflibs ]
Nachdem sicher gestellt ist, das der FPC die Bibliotheken auch findet muss nur noch die gprof-Unterstützung aktiviert werden:

Ausführen
Danach kann die Anwendung wie gewohnt gestartet werden. Erst beim (regulären) beenden der Anwendung wird die Datei gmon.out im Arbeitsverzeichnis der Anwendung erstellt, welche die Rohdaten der Analyse enthält.
Profilerstellung
Nach dem beenden kann aus der gmon.out und der ausführbaren Datei mittels der gprof.exe dann der eigentliche Bericht erstellt werden.
Der Aufruf dazu in der Eingabeaufforderung lautet wie folgt:
Code: Alles auswählen
gprof <Executable> gmon.out > profil.log