17.2. perf를 사용하여 CPU 사용량 프로파일링
이 절차에서는 perf top
및 프로필 CPU 사용량을 실시간으로 활성화합니다.
사전 요구 사항
-
perf 설치에 설명된 대로
perf
사용자 공간 도구가 설치되어 있습니다. - root 액세스 권한이 있어야 합니다.
절차
perf의 주요
모니터링 인터페이스를 시작합니다.# perf top
모니터링 인터페이스는 다음과 유사합니다.
Samples: 8K of event 'cycles', 2000 Hz, Event count (approx.): 4579432780 lost: 0/0 drop: 0/0 Overhead Shared Object Symbol 2.20% [kernel] [k] do_syscall_64 2.17% [kernel] [k] module_get_kallsym 1.49% [kernel] [k] copy_user_enhanced_fast_string 1.37% libpthread-2.29.so [.] pthread_mutex_lock 1.31% [unknown] [.] 0000000000000000 1.07% [kernel] [k] psi_task_change 1.04% [kernel] [k] switch_mm_irqs_off 0.94% [kernel] [k] fget 0.74% [kernel] [k] entry_SYSCALL_64 0.69% [kernel] [k] syscall_return_via_sysret 0.69% libxul.so [.] 0x000000000113f9b0 0.67% [kernel] [k] kallsyms_expand_symbol.constprop.0 0.65% firefox [.] moz_xmalloc 0.65% libpthread-2.29.so [.] __pthread_mutex_unlock_usercnt 0.60% firefox [.] free 0.60% libxul.so [.] 0x000000000241d1cd 0.60% [kernel] [k] do_sys_poll 0.58% [kernel] [k] menu_select 0.56% [kernel] [k] _raw_spin_lock_irqsave 0.55% perf [.] 0x00000000002ae0f3
이 예에서 커널 함수
do_syscall_64
는 대부분의 CPU 시간을 사용합니다.
추가 리소스
-
시스템의
perf-top(1)
도움말 페이지