perf

17 commands

17 shown

Записать CPU-циклы Записать данные о производительности с графом вызовов perf record -g ./my_app #perf#profiling#cpu#linux Показать отчёт perf Интерактивный просмотр записанных данных perf perf report #perf#profiling#report Список доступных событий Показать все поддерживаемые события perf на системе perf list #perf#profiling#events Статистика команды Показать аппаратные счётчики для команды perf stat ls -la #perf#profiling#stat Запись с конкретным событием Записывать только события cache-miss perf record -e cache-misses ./my_app #perf#profiling#cache Интерактивный просмотр в реальном времени Показать использование CPU по функциям в реальном времени perf top #perf#profiling#top#live Аннотировать горячие функции Показать аннотированный ассемблер для самых горячих функций perf annotate #perf#profiling#annotate Сбор данных для Flamegraph Собрать данные для генерации flamegraph perf record -F 99 -ag -- sleep 30 && perf script > out.perf #perf#profiling#flamegraph Подсчёт системных вызовов Подсчитать конкретные системные вызовы perf stat -e syscalls:sys_enter_read ./my_app #perf#profiling#syscalls Подключиться к запущенному процессу Профилировать уже запущенный процесс 5 секунд perf record -p 1234 sleep 5 #perf#profiling#attach#pid Живой граф вызовов CPU Живой top горячих функций с цепочками вызовов; dwarf разворачивает стек без frame pointer perf top -g --call-graph dwarf #perf#performance#debug#troubleshooting Системная запись профиля Семплирует всю машину на 99Гц 30с, затем печатает отчёт; 99Гц уходит от синхронного алиасинга perf record -F 99 -a -g -- sleep 30 && perf report --stdio #perf#performance#monitoring#troubleshooting Конвейер flame graph Превращает perf.data в интерактивный flame graph SVG (инструменты FlameGraph от Brendan Gregg) perf script | stackcollapse-perf.pl | flamegraph.pl > flame.svg #perf#performance#observability#troubleshooting Подробная статистика счётчиков Три -d дают детали L1/LLC/TLB и простоев; показывает упор в память против упора в CPU perf stat -d -d -d -- ./app #perf#performance#monitoring#troubleshooting Анализ задержек планировщика Записывает переключения контекста и показывает задержку пробуждения по задачам; ловит голодание в runqueue perf sched record -- sleep 10 && perf sched latency --sort max #perf#performance#kernel#troubleshooting Трассировка syscall через perf strace-подобная трассировка syscall со сводкой -s; меньше накладных, без остановки через ptrace perf trace -s -p <pid> #perf#debug#performance#troubleshooting Динамический пробник на функции Добавляет kprobe с аргументом и записывает его; смотрит внутренности ядра без пересборки perf probe --add 'tcp_sendmsg size' && perf record -e probe:tcp_sendmsg -a -- sleep 5 #perf#kernel#debug#observability
no commands match