perf-trace — online w chmurze

To jest polecenie śledzenia wydajności, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


perf-trace - narzędzie inspirowane strace

STRESZCZENIE


perf wyśledzić
perf wyśledzić rekord

OPIS


To polecenie pokaże zdarzenia związane z celem, początkowo wywołania systemowe, ale
inne zdarzenia systemowe, takie jak błędy stron, zdarzenia czasu życia zadania, zdarzenia planowania itp.

Jest to narzędzie działające w trybie na żywo oprócz pracy z plikami perf.data, takimi jak inne perf
narzędzia. Pliki można generować za pomocą perf rekord polecenie, ale sesja musi
uwzględnij zdarzenia raw_syscalls (-e raw_syscalls:*). Alternatywnie, perf wyśledzić rekord mogą
być używany jako skrót do automatycznego dołączania zdarzeń raw_syscalls podczas pisania zdarzeń
do pliku.

Poniższe opcje dotyczą śledzenia wydajności; opcje rekordu śledzenia wydajności znajdują się w
perf rekord strony podręcznika.

OPCJE


-a, --all-cpus
Kolekcja z całego systemu ze wszystkich procesorów.

-e, --wyrażenie
Lista wywołań systemowych do wyświetlenia, obecnie tylko nazwy wywołań systemowych. Poprzedzony ! pokazuje wszystko
wywołania systemowe, ale te określone. Być może będziesz musiał uciec.

-o, --wyjście=
Nazwa pliku wyjściowego.

-p, --pid=
Rejestruj zdarzenia na istniejącym identyfikatorze procesu (lista oddzielona przecinkami).

-t, --tid=
Rejestruj zdarzenia na istniejącym identyfikatorze wątku (lista oddzielona przecinkami).

-u, --uid=
Rejestruj zdarzenia w wątkach należących do uid. Imię lub numer.

--filtr-pid=
Odfiltruj zdarzenia dla tych pidów i dla wyśledzić się (lista oddzielona przecinkami).

-v, --verbose=
Poziom szczegółowości.

--nie-dziedziczy
Zadania podrzędne nie dziedziczą liczników.

-m, --mmap-strony=
Liczba stron danych mmap (musi być potęgą dwójki) lub specyfikacja rozmiaru z dołączonym
znak jednostki - B/K/M/G. Rozmiar jest zaokrąglany w górę, aby liczba najbliższych stron wynosiła dwa
wartość.

-C, --procesor
Zbieraj próbki tylko z dostarczonej listy procesorów. Wiele procesorów może być dostarczonych jako
lista oddzielona przecinkami bez spacji: 0,1. Zakresy procesorów są określone za pomocą -: 0-2. w
tryb na wątek z włączonym trybem dziedziczenia (domyślnie), zdarzenia są przechwytywane tylko wtedy, gdy
wątek jest wykonywany na wyznaczonych procesorach. Domyślnie monitorowane są wszystkie procesory.

--duration: Pokaż tylko zdarzenia, które miały czas trwania dłuższy niż NM ms.

--sched: Nalicza czas wykonywania wątków i dostarcza podsumowanie na koniec sesji.

-i --input Przetwarza zdarzenia z podanego pliku danych perf.

-T --time Wypisuje pełny znacznik czasu, a raczej czas względem pierwszej próbki.

--kom
Pokaż COMM procesu tuż obok jego identyfikatora, domyślnie włączone, wyłącz za pomocą --no-comm.

-s, --podsumowanie
Pokaż tylko podsumowanie wywołań systemowych według wątku z minimalnym, maksymalnym i średnim czasem (w milisekundach)
i względne standardowe odchylenie.

-S, --z-podsumowaniem
Pokaż wszystkie wywołania systemowe, a następnie podsumowanie według wątku z minimalnym, maksymalnym i średnim czasem (in
ms) i względne standardowe odchylenie.

--statystyki_narzędzi
Pokaż statystyki narzędzia, takie jak liczba razy fd→ścieżka została wykryta przez podpięcie
otwarty powrót syscall + vfs_getname lub poprzez odczyt /proc/pid/fd itp.

-F=[wszystkie|min|maj], --pf=[wszystkie|min|maj]
Śledź błędy stron. Opcjonalnie możesz określić, czy chcesz mieć drugorzędne, główne lub wszystkie
błędy stron. Wartość domyślna to maj.

--wywołania systemowe
Śledzenie wywołań systemowych. Ta opcja jest domyślnie włączona.

--wydarzenie
Śledź inne wydarzenia, zobacz perf podstęp dla pełnej listy.

--proc-map-timeout
Przetwarzanie istniejących wątków /proc/XXX/mmap może zająć dużo czasu, ponieważ
plik może być ogromny. W takich przypadkach potrzebna jest przerwa. Ta opcja ustawia czas
z limitem. Wartość domyślna to 500 ms.

BŁĘDY STRONY


Podczas śledzenia błędów stron format śledzenia jest następujący:

wada [ + ]adres.dso@addr.przesunięcie[1]> (
poziom>).

· min/maj wskazuje, czy zdarzenie związane z usterką jest drobne czy poważne;

· ip.symbol pokazuje symbol wskaźnika instrukcji (kod, który wygenerował błąd); Jeśli
brak dostępnych symboli debugowania, perf trace wydrukuje surowy adres IP;

· addr.dso pokazuje DSO dla uszkodzonego adresu;

· typ mapy to albo d dla map niewykonywalnych lub x dla map wykonywalnych;

· poziom addr to albo k dla jądra dso lub . dla użytkownika dso.

Do rozpoznawania symboli może być konieczne zainstalowanie symboli debugowania.

Należy pamiętać, że czas trwania wynosi obecnie zawsze 0 i nie odzwierciedla rzeczywistego czasu.
wziął za winy do obsługi!

Gdy podano --verbose, perf trace próbuje wydrukować wszystkie dostępne informacje dla obu adresów IP
i adres usterki w postaci dso@symbol[2]+przesunięcie.

PRZYKŁADY


Śledź tylko główne błędy stron:

$ Perf trace --no-syscalls -F

Śledź wywołania systemowe, główne i drobne błędy stron:

$ perf ślad -F wszystko

1416.547 ( 0.000 ms): python/20235 poważny błąd [CRYPTO_push_info_+0x0] => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0@0x61be0 (x.)

Jak widać, w procesie Pythona wystąpił poważny błąd strony, od
Procedura CRYPTO_push_info_, która zawiodła gdzieś w libcrypto.so.

Korzystaj z narzędzia perf-trace online za pomocą usług onworks.net



Najnowsze programy online dla systemów Linux i Windows