2009-12-27 10 views
7

Ich habe versucht, eine verwandte Frage zu finden, aber alle vorherigen Fragen betreffen Profiler für natives C++ in Windows. Ich habe eine Weile gegoogelt und etwas über gprof gelernt, aber die Ausgabe von gprof enthielt tatsächlich viele obskure interne Funktionen. Gibt es einen guten Open Source C++ Profiler mit guter Dokumentation?Gut C++ Profiler für GCC

+0

Sie können auch die manuelle Profilerstellung mit http://code.google.com/p/profiny ausprobieren. Der Overhead sollte im Vergleich zu anderen Tools sehr klein sein. – user2001885

+0

mögliches Duplikat von [Was kann ich verwenden, um C++ - Code in Linux zu profilieren?] (Http://stackoverflow.com/questions/375913/what-can-i-use-to-profile-c-code-in-linux) – user

Antwort

3

Compile die Flagge -pg und gprof verwenden verwenden.

+0

können Sie bitte ein gutes Gprof-Tutorial vorschlagen. – Boolean

+1

http://www.thegeekstuff.com/2012/08/gprof-tutorial/ –

0

Wenn Sie die Abhängigkeiten der KDE-Bibliothek nicht stören, ist KCachegrind sehr nützlich mit der hinzugefügten Visualisierung. Es hängt von Callgrind und Valgrind ab, wie man hätte erraten können, daher sind während der Kompilierzeit keine speziellen Compiler-Flags erforderlich.

0

Ich habe gehört, dass oprofile wirklich, wirklich gut für Echtzeit-Apps ist. Linux nur, obwohl, AFAIK.

0

Wie viel Detail benötigen Sie in Ihren Profilberichten? Wenn Sie nur ein paar sehr einfache Zeitprofile für einige wenige Funktionen erstellen möchten, können Sie mit den neuen Funktionen, die über die Klassen C++ 11 chrono verfügbar sind, Cross-Plattform-Cross-Compiler erstellen.

Siehe this article für einen einfachen Profilierungscode, der ähnlich zu Matlab funktioniert super einfach zu tic und toc Funktionen zu verwenden.