Repository hosting several guides on how to trace real-time multi-threading applications
projekt architektury wielowątkowych aplikacji jest wymagajacy i czesto nie pozostawia miejsca na błędy programisty.
Nieprzemyślane decyzje wpływają na obniżenie wydajności, lub w najbardziej skrajnych przypadkach, zlego funkcjonowania oprogramowania.
W momencie review skomplikowanych - już istniejących systemów często nie jestesmy w stanie polegac tylko na własnej intuicji.
W tym momencie przychodzą nam z pomocą narzędzia - w wielkiej mierze dostępne jako aplikacje opensource - dostępne z przyjaznymi licencjami.
Poniżej przedstawiam najbardziej popularne narzędzia dostępne w praktycznie każdej dystrybucji linuxa (często wymaga jednak przekompilowania jądra)
dla naiwnego porownania cpu load
perf eventsy sa jakos podawane przez kernel i perf mam duzo opcji na zliczanie
ich.
perf list
- wyswietla dostepne, po czym mozemy je sledzic
lttng daje mozliwosc traceowanie user-space'owej aplikacji, ale też instrumentacji modułów kernela. daje to pełne spektrum analizy przy pełnej instrumentacji fukcji. w skrócie, z bardzo małym overheadem rejstrujemy wywołanie każdej funkcji w danej aplikacji / module kernela.