EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

perf-top – Online in der Cloud

Führen Sie perf-top beim kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl perf-top, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


perf-top – Systemprofilierungstool.

ZUSAMMENFASSUNG


perf Top [-e | --event=EREIGNIS] [ ]

BESCHREIBUNG


Dieser Befehl generiert und zeigt ein Leistungsindikatorprofil in Echtzeit an.

OPTIONAL


-a, --all-cpus
Systemweite Sammlung. (Standard)

-C , --count=
Veranstaltungszeitraum zum Ausprobieren.

-C , --cpu=
Überwachen Sie nur die Liste der bereitgestellten CPUs. Es können mehrere CPUs als a bereitgestellt werden
durch Kommas getrennte Liste ohne Leerzeichen: 0,1. Bereiche von CPUs werden mit - angegeben: 0-2.
Standardmäßig werden alle CPUs überwacht.

-D , --delay=
Anzahl der Sekunden, die zwischen Aktualisierungen verzögert werden sollen.

-e , --event=
Wählen Sie das PMU-Ereignis aus. Die Auswahl kann ein symbolischer Ereignisname sein (verwenden Sie perf Liste auflisten
alle Ereignisse) oder ein rohes PMU-Ereignis (eventsel+umask) in Form von rNNN, wobei NNN a ist
Hexadezimaler Ereignisdeskriptor.

-E , --entries=
Zeigen Sie so viele Funktionen an.

-F , --count-filter=
Zeigen Sie nur Funktionen mit mehr Ereignissen an.

--Gruppe
Ordnen Sie die Zähler einer Zählergruppe zu.

-F , --freq=
Profil auf dieser Frequenz.

-i, --inherit
Untergeordnete Aufgaben erben keine Zähler.

-k , --vmlinux=
Pfad zu vmlinux. Erforderlich für die Anmerkungsfunktion.

-M , --mmap-pages=
Anzahl der mmap-Datenseiten (muss eine Zweierpotenz sein) oder Größenangabe mit angehängtem Wert
Einheitszeichen - B/K/M/G. Die Größe wird auf die nächste Seitenpotenz von zwei aufgerundet
Wert.

-P , --pid=
Profilereignisse für vorhandene Prozess-ID (durch Kommas getrennte Liste).

-T , --tid=
Profilereignisse für vorhandene Thread-ID (durch Kommas getrennte Liste).

-u, --uid=
Zeichnen Sie Ereignisse in Threads auf, die UID gehören. Name oder Nummer.

-R , --realtime=
Sammeln Sie Daten mit dieser RT SCHED_FIFO-Priorität.

--sym-annotate=
Beschriften Sie dieses Symbol.

-K, --hide_kernel_symbols
Kernelsymbole ausblenden.

-U, --hide_user_symbols
Benutzersymbole ausblenden.

--demangle-kernel
Kernel-Symbole entzerren.

-D, --dump-symtab
Geben Sie die für die Profilerstellung verwendete Symboltabelle aus.

-v, --verbose
Seien Sie ausführlicher (zeigen Sie Fehler beim Öffnen des Zählers usw. an).

-z, --zero
Kein Verlauf über alle Anzeigeaktualisierungen hinweg.

-s, --sort
Nach Schlüssel(n) sortieren: PID, Comm, DSO, Symbol, Parent, Srcline, Weight, Local_Weight, Abort,
in_tx, Transaktion, Overhead, Beispiel, Zeitraum. Bitte beachten Sie die Beschreibung von --sort im
Perf-Report-Manpage.

--fields=
Ausgabefeld angeben - Es können mehrere Schlüssel im CSV-Format angegeben werden. Folgende Felder
stehen zur Verfügung: Overhead, Overhead_sys, Overhead_us, Overhead_Children, Sample und
Zeitraum. Es kann auch beliebige Sortierschlüssel enthalten.

Standardmäßig werden alle Sortierschlüssel angehängt, die nicht in --field angegeben sind
automatisch.

-n, --show-nr-samples
Zeigen Sie eine Spalte mit der Anzahl der Proben an.

--show-total-period
Zeigt eine Spalte mit der Summe der Perioden an.

--dsos
Berücksichtigen Sie in diesen DSOs nur Symbole. Diese Option wirkt sich auf den Prozentsatz aus
Überkopfsäule. Weitere Informationen finden Sie unter --percentage.

--comms
Berücksichtigen Sie in diesen Mitteilungen nur Symbole. Diese Option wirkt sich auf den Prozentsatz aus
Überkopfsäule. Weitere Informationen finden Sie unter --percentage.

--symbole
Berücksichtigen Sie nur diese Symbole. Diese Option wirkt sich auf den Prozentsatz des Overheads aus
Spalte. Weitere Informationen finden Sie unter --percentage.

-M, --disassembler-style=
Disassembler-Stil für objdump festlegen.

--Quelle
Verschachteln Sie Quellcode mit Assemblercode. Standardmäßig aktiviert, deaktivieren mit
--Keine Quelle.

--asm-roh
Rohe Anweisungscodierung von Assembleranweisungen anzeigen.

-g
Ermöglicht die Aufzeichnung von Aufrufdiagrammen (Stack Chain/Backtrace).

--call-graph [mode,type,min[,limit],order[,key][,branch]]
Richten Sie die Aufzeichnung des Aufrufdiagramms (Stack Chain/Backtrace) ein und aktivieren Sie sie, impliziert -g. Sehen
Weitere Informationen finden Sie im Abschnitt --call-graph in den Manpages perf-record und perf-report.

--Kinder
Sammeln Sie die Anrufkette von Kindern bis zum Elterneintrag, damit sie dann im angezeigt werden können
Ausgang. Die Ausgabe erhält eine neue Spalte "Kinder" und wird nach den Daten sortiert.
Es erfordert die aktivierte Option -g/--call-graph. Siehe den Abschnitt „Overhead-Berechnung“.
mehr Details.

--max-stack
Legen Sie die Stapeltiefengrenze beim Analysieren der Aufrufkette fest, alles, was über den angegebenen Wert hinausgeht
Tiefe wird ignoriert. Dies ist ein Kompromiss zwischen Informationsverlust und schneller
Verarbeitung insbesondere für Workloads, die einen sehr langen Callchain-Stack haben können.

Standard: 127

--ignore-callees=
Ignorieren Sie Aufrufe der Funktion(en), die mit der angegebenen Regex übereinstimmen. Dies hat die Wirkung von
Sammeln der Aufrufer jeder dieser Funktionen an einer Stelle im Aufrufgraphenbaum.

--Prozentgrenze
Zeigen Sie keine Einträge an, deren Overhead unter diesem Prozent liegt. (Standard: 0).

--Prozentsatz
Bestimmen Sie, wie der Overhead-Prozentsatz gefilterter Einträge angezeigt werden soll. Filter können sein
angewendet von --comms, --dsos und/oder --symbols-Optionen und Zoom-Operationen auf der TUI
(Thread, DSO usw.).

"relativ" bedeutet, dass es nur relativ zu gefilterten Einträgen ist, damit die
Die Summe der angezeigten Einträge beträgt immer 100 %. "absolut" bedeutet, dass es beibehalten wird
der ursprüngliche Wert vor und nach der Anwendung des Filters.

-w, --column-widths=
Erzwingen Sie jede Spaltenbreite auf die bereitgestellte Liste, um die Lesbarkeit des Terminals zu gewährleisten. 0 bedeutet
keine Begrenzung (Standardverhalten).

--proc-map-timeout
Bei der Verarbeitung bereits vorhandener Threads /proc/XXX/mmap kann es lange dauern, weil
Die Datei kann riesig sein. In solchen Fällen ist eine Auszeit erforderlich. Diese Option legt die Uhrzeit fest
Out-Limit. Der Standardwert beträgt 500 ms.

-b, --branch-any
Aktivieren Sie die Stichprobenentnahme für entnommene Zweigstacks. Jede Art entnommener Zweige kann beprobt werden. Das ist ein
Abkürzung für --branch-filter any. Weitere Informationen finden Sie unter --branch-filter.

-j, --branch-filter
Aktivieren Sie die Stichprobenentnahme für entnommene Zweigstacks. Jede Probe erfasst eine Reihe aufeinanderfolgender Proben
Geäst. Die Anzahl der mit jeder Stichprobe erfassten Zweige hängt vom Basiswert ab
Hardware, die Art der interessierenden Zweige und der ausgeführte Code. Es ist möglich zu
Wählen Sie die Arten der erfassten Zweige aus, indem Sie Filter aktivieren. Für eine vollständige Liste von
Modifikatoren finden Sie auf der Perf-Record-Manpage.

Die Option erfordert mindestens einen Verzweigungstyp unter „any“, „any_call“, „any_ret“, „ind_call“ und „cond“.
Die Berechtigungsstufen können weggelassen werden, in diesem Fall gelten die Berechtigungsstufen der zugehörigen
Ereignis werden auf den Zweigfilter angewendet. Sowohl Kernel- (k) als auch Hypervisor-Privilegien (hv).
Ebenen sind genehmigungspflichtig. Beim Sampling auf mehreren Ereignissen erfolgt das Branch-Stack-Sampling
ist für alle Probenahmeereignisse aktiviert. Der Stichprobenzweigtyp ist für alle Ereignisse derselbe.
Die verschiedenen Filter müssen als durch Kommas getrennte Liste angegeben werden: --branch-filter any_ret,u,k
Beachten Sie, dass diese Funktion möglicherweise nicht auf allen Prozessoren verfügbar ist.

INTERAKTIV AUFFORDERUNG SCHLÜSSEL


[d]
Verzögerung der Anzeigeaktualisierung.

[e]
Anzahl der anzuzeigenden Einträge.

[E]
Ereignis, das angezeigt wird, wenn mehrere Zähler aktiv sind.

[f]
Profilanzeigefilter (>= Trefferanzahl).

[F]
Anmerkungsanzeigefilter (>= % der Gesamtmenge).

[S]
Symbol mit Anmerkungen versehen.

[Ja]
Stoppen Sie die Anmerkung und kehren Sie zur vollständigen Profilanzeige zurück.

[z]
Schalten Sie die Nullung der Ereignisanzahl bei allen Anzeigeaktualisierungen um.

[qQ]
Verlassen.

Durch Drücken einer nicht zugeordneten Taste wird ein Menü angezeigt und Sie werden zur Eingabe aufgefordert.

ÜBERKOPF BERECHNUNG


Der Overhead kann in zwei Spalten dargestellt werden als weltweit und Selbst wenn perf sammelt
Anrufketten. Die selbst Der Overhead wird einfach durch Addition aller Periodenwerte der berechnet
Eintrag - normalerweise eine Funktion (Symbol). Dies ist der Wert, den perf traditionell zeigt und
Summe aller selbst Overhead-Werte sollten 100 % betragen.

Das und Kindern Der Overhead wird berechnet, indem alle Periodenwerte der untergeordneten Funktionen addiert werden, so dass
dass es den Gesamtaufwand der höheren Funktionen anzeigen kann, auch wenn dies nicht der Fall ist
viel direkt ausführen. weltweit bedeutet hier Funktionen, die von einem anderen (übergeordneten) aufgerufen werden
Funktion.

Es mag verwirrend sein, dass die Summe aller und Kindern Overhead-Werte über 100 % liegen, da
jeder von ihnen ist bereits eine Ansammlung von selbst Overhead seiner untergeordneten Funktionen. Aber mit
Wenn dies aktiviert ist, können Benutzer herausfinden, welche Funktion den meisten Overhead verursacht, selbst wenn Samples vorhanden sind
auf die Kinder verteilen.

Betrachten Sie das folgende Beispiel; Es gibt drei Funktionen wie unten.

.ft C
Leere foo (Leere) {
/* etwas tun */
}

Leere Balken (Leere) {
/* etwas tun */
foo();
}

int Haupt(leer) {
Bar()
Rückkehr 0;
}
.ft

In diesem Fall foo ist ein Kind von Bar und Bar ist ein unmittelbares Kind von Haupt- so foo ist auch ein
Kind von Haupt-. Mit anderen Worten, Haupt- ist ein Elternteil von foo und Bar und Bar ist ein Elternteil von
foo.

Angenommen, alle Samples sind in aufgenommen foo und Bar nur. Wenn es mit Callchains aufgezeichnet wird
die Ausgabe wird in der üblichen (nur Selbst-Overhead-) Ausgabe von perf so etwas wie unten zeigen
Bericht:

.ft C
Overhead-Symbol
..........................
60.00 % foo
|
--- fo
Bar
Haupt-
__libc_start_main

40.00 % bar
|
--- Bar
Haupt-
__libc_start_main
.ft

Wenn die Option --children aktiviert ist, wird die selbst Overhead-Werte von untergeordneten Funktionen (dh
foo und Bar) werden zu den Eltern addiert, um die zu berechnen und Kindern über Kopf. In diesem Fall die
Bericht könnte angezeigt werden als:

.ft C
Kinder-Selbstsymbol
........ ........ ....................
100.00% 0.00% __libc_start_main
|
--- __libc_start_main

100.00% 0.00% Haupt
|
--- hauptsächlich
__libc_start_main

100.00 % 40.00 % bar
|
--- Bar
Haupt-
__libc_start_main

60.00 % 60.00 % foo
|
--- fo
Bar
Haupt-
__libc_start_main
.ft

In der obigen Ausgabe ist die selbst Overhead von foo (60%) wurde dem . hinzugefügt und Kindern Overhead von
Bar, Haupt- und __libc_start_main. Ebenso die selbst Overhead von Bar (40%) wurde dem . hinzugefügt
und Kindern Overhead von Haupt- und \_\_libc_start_main.

So \_\_libc_start_main und Haupt- werden zuerst angezeigt, da sie gleich (100%) und Kindern
Overhead (auch wenn sie null haben selbst Overhead) und sie sind die Eltern von foo und
Bar.

Seit v3.16 die und Kindern Overhead wird standardmäßig angezeigt und die Ausgabe wird nach seiner
Werte. Das und Kindern Overhead wird durch Angabe der Option --no-children auf dem
Befehlszeile oder durch Hinzufügen bericht.kinder = falsch or top.kinder = falsch in der perf
Konfigurationsdatei.

Nutzen Sie perf-top online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad