Wie profiliere ich Programm auf Linux-Plattform, ohne es neu zu erstellen?

8

Ich habe zwei Profiling-Tools (VTune auf Windows und dbx (innerhalb von Sunstudio) auf Solaris) verwendet, die Programme programmieren können, ohne sie neu zu erstellen, und während des Profiling läuft das Programm nur mit der gleichen Geschwindigkeit wie normal. Beide Funktionen haben mir viel Zeit erspart.

Nun möchte ich wissen, ob es einige kostenlose Tools gibt, die auf der Linux-Plattform verfügbar sind und dasselbe tun können. Ich denke, ich brauche Profiling-Tools basierend auf Stichproben. VTune ist gut, aber teuer ... Ich habe von Gprof und Valgrind gehört. Aber gprof muss das Programm instrumentieren (also müssen wir das Programm neu aufbauen) und valgrind wird die Programmausführung ziemlich verlangsamen. (von Valgrind Einführung führt Cachegrind Programme etwa 20-100x langsamer als normal, und Callgrind, die ich für die Profilerstellung muss auf Cachegrind basiert)

Für das Profiling muss ich nur die Ausführungszeit von Funktionsaufrufen herausfinden, damit ich herausfinden kann, wo die Leistungsverschlechterung stattfindet. Eigentlich brauche ich nicht viele Low-Level-Profiling-Informationen wie Cachegrind bereitgestellt ...

    
superb 05.03.2010, 02:33
quelle

4 Antworten

5

oprofile ist ziemlich gut, aber es kann schwierig sein, es einzurichten. Es erfordert auch nicht, dass Sie Ihr Programm neu erstellen.

    
George 05.03.2010, 02:37
quelle
1

Ich stimme Paul zu, ich denke, Zoom ist wahrscheinlich der beste Linux-Profiler, für den Sie bezahlen können.

Aber für echte Ergebnisse verlasse ich mich darauf diese einfache Methode , die ich seit der Zeit benutzt habe, bevor Profiler erfunden wurden.

    
Mike Dunlavey 05.03.2010 12:09
quelle
1

Leistungsindikatoren für Linux ist ein neues Tool, das für die Kernel 2.6.31 und höher verwendet werden kann; es ist weniger aufdringlich (sowohl für das Programm als auch für das System als Ganzes) als Valgrind oder OProfile.

    
ephemient 05.03.2010 18:34
quelle
0

Eine schönere Option als oprofile ist Zoom . Es ist ähnlich wie Shark auf Mac OS X, wenn Sie das jemals benutzt haben. Es ist kommerziell ($ 199), aber Sie können eine kostenlose Testversion von www.rotateright.com erhalten.

    
Paul R 05.03.2010 08:37
quelle

Tags und Links