2016-06-06 30 views
2

Ich versuche, Linux Perf zu verwenden, um einige Performance-Analyse zu tun. Ich habe eine Anwendung, die mit entfernten Symbolen aufgebaut ist, und ich war überrascht, dass Linux Perf Top die Disassembly-Zeile nicht anzeigen konnte. Es zeigte nur die rohe EIP an.Perf Draufsicht Disassemblierung ohne Symbol (mit abisolierten Binär)

Wie ordnen wir das Leistungsereignis wieder auf die Rohmontagelinie ohne Symbolinformationen zu?

+0

'perf top' gibt einen Live-Überblick über die profilierte Aktivität, die nicht wirklich mit annotiertem Code kompatibel ist. Ich meine, Sie wollen extreme Details über unterschiedliche Statistiken. Wenn Sie die Leistung Ihrer Anwendung analysieren möchten, verwenden Sie 'perf record' und dann' perf report' oder 'perf annotate'. – amigadev

Antwort

-1

vielleicht können Sie dies versuchen: 1) '-g' in Makefile hinzufügen; 2) benutze "objdump", um die Mischung aus Quellcode und asm auszugeben.

+0

Der erste ist keine Option, weil ich eine Methodik entwickeln möchte, die für den allgemeinen Fall funktioniert. Ich mache gerade den zweiten, aber es ist ineffizient, weil ich jeden EIP manuell zuordnen muss. – Patrick

+0

@Patrick Die Verwendung von '-g' und das Vorhandensein von Debug-Symbolen würde helfen ... Meinen Sie, dass Sie eine Performance-Analyse in verschlechterten Bedingungen durchführen möchten? – amigadev