Ich versuche, meine Anwendung mit perf zu benchmarken. Die Anwendung ist C++ basiert und ich möchteDie Option --exclude-perf im Perf-Befehl kann nicht verwendet werden
L1-dcache-loads,L1-dcache-load-misses,L1-dcache-stores,cycles,instructions,cache-references,cache-misses,bus-cycles,branch-misses
ich in meiner Ausgabe perf Ereignisse zu sehen, vermeiden wollen, bewerten, um es leicht lesbar mehr zu machen. Der Versuch, folgenden Befehl ausführen, um die Ausgabe zu erfassen:
perf record -g -e "L1-dcache-loads,L1-dcache-load-misses,L1-dcache-stores,cycles,instructions,cache-references,cache-misses,bus-cycles,branch-misses" --exclude-perf Binary-name
aber oben genannten mit folgenden Fehler Befehl versagt:
--exclude-perf option should follow a -e tracepoint option
Usage: perf record [options] [command]
or: perf record [options] -- command [options]
--exclude-perf don't record events from perf itself
Wenn ich dann läuft mein Befehl nicht --exclude-perf
Option verwenden, sehr gut ohne jede Error.
Lassen Sie mich wissen, was Fehler, den ich mache, während die Option Hinzufügen von Events --exclude-perf
Warum nicht einfach den interaktiven 'Perf Report' verwenden und sich auf die PID Ihrer Anwendung konzentrieren? Außerdem sollten keine Perf-bezogenen Samples vorhanden sein, da Sie Single-Process-Profiling durchführen, nicht das gesamte System-Profiling, wenn sich Perf selbst profiliert. – osgx