Red Hat Training

A Red Hat training course is available for RHEL 8

13.4.2. Perfilar o uso de CPU com perf top

Este procedimento ativa perf top e faz o perfil de utilização da CPU em tempo real.

Pré-requisitos

  • Você tem a ferramenta de espaço do usuário perf instalada como descrito em Instalando o perf.
  • Você tem acesso à raiz

Procedimento

  • Iniciar a interface de monitoramento perf top:

    # perf top

    Exemplo 13.1. Desempenho de topo

    --------------------------------------------------------------------
    PerfTop:   20806 irqs/sec  kernel:57.3%  exact: 100.0% lost: 0/0 drop: 0/0 [4000Hz cycles],  (all, 8 CPUs)
    ---------------------------------------------------------------------
    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

    No exemplo anterior, a função do kernel do_syscall_64 está usando o maior tempo de CPU.

Recursos adicionais

  • A página do homem perf-top(1).