perf stat 으로 카운터 확인
이 단계에서는 perf stat 명령을 사용하여 성능 카운터를 측정하는 방법을 배우게 됩니다. 성능 카운터는 실행된 명령어 수, 캐시 미스 또는 분기 예측과 같이 CPU 내에서 발생하는 특정 이벤트를 계산하는 특수한 하드웨어 레지스터입니다.
perf 도구는 Linux 에서 성능 분석을 위한 강력한 명령줄 유틸리티입니다. perf stat은 명령을 실행하고 해당 명령 실행에 대한 성능 카운터 통계를 수집하는 데 사용됩니다.
간단한 명령을 실행하고 성능 카운터를 관찰하는 것으로 시작해 보겠습니다. 디렉토리 내용을 나열하는 ls 명령을 사용합니다.
아직 열지 않았다면 터미널을 엽니다. 데스크탑 왼쪽에서 Xfce 터미널 아이콘을 찾을 수 있습니다.
이제 다음 명령을 입력하고 Enter 키를 누릅니다.
perf stat ls
다음과 유사한 출력을 볼 수 있습니다.
Performance counter stats for 'ls':
<placeholder> task-clock (msec) ## <placeholder> CPUs utilized
<placeholder> context-switches ## <placeholder> /sec
<placeholder> cpu-migrations ## <placeholder> /sec
<placeholder> page-faults ## <placeholder> /sec
<placeholder> cycles ## <placeholder> GHz
<placeholder> instructions ## <placeholder> insns per cycle
<placeholder> branches ## <placeholder> % of all instructions
<placeholder> branch-misses ## <placeholder> % of all branches
<placeholder> msec task-clock ## <placeholder> CPUs utilized
정확한 숫자와 이벤트는 시스템 및 특정 실행에 따라 다를 수 있지만, ls 명령 실행 중에 성능 이벤트 목록과 해당 카운트를 볼 수 있습니다.
볼 수 있는 몇 가지 일반적인 이벤트는 다음과 같습니다.
task-clock: 작업이 CPU 에서 실행된 총 시간입니다.
cycles: 소요된 CPU 사이클 수입니다.
instructions: 실행된 명령어 수입니다.
branch-misses: 분기 예측이 잘못된 횟수입니다.
이러한 카운터를 이해하면 코드 또는 시스템에서 성능 병목 현상을 식별하는 데 도움이 될 수 있습니다.
더 복잡한 명령이나 스크립트에서 perf stat을 실행하여 성능을 분석할 수도 있습니다.
예를 들어, 간단한 sleep 명령에서 perf stat을 실행해 보겠습니다.
perf stat sleep 1
이렇게 하면 시스템이 1 초 동안 절전 상태일 때 성능 카운터가 측정됩니다. 출력에는 sleep 프로세스에 대한 카운터가 표시됩니다.
다양한 명령에서 perf stat을 실행하여 카운터가 어떻게 변경되는지 실험해 보십시오.
다음 단계로 진행하려면 계속을 클릭하십시오.