25.2. Perf 사용


프로그램 실행의 통계 또는 샘플을 수집하기 위해 기본 PCL 인프라를 사용하는 것은 상대적으로 간단합니다. 이 섹션에서는 전체 통계 및 샘플링의 간단한 예를 제공합니다.

make 및 해당 하위 항목에 대한 통계를 수집하려면 다음 명령을 사용합니다.

# perf stat -- make all
Copy to Clipboard Toggle word wrap

perf 명령은 다양한 하드웨어 및 소프트웨어 카운터를 수집합니다. 그런 다음 다음 정보를 출력합니다.

Performance counter stats for 'make all':

  244011.782059  task-clock-msecs         #      0.925 CPUs
          53328  context-switches         #      0.000 M/sec
            515  CPU-migrations           #      0.000 M/sec
        1843121  page-faults              #      0.008 M/sec
   789702529782  cycles                   #   3236.330 M/sec
  1050912611378  instructions             #      1.331 IPC
   275538938708  branches                 #   1129.203 M/sec
     2888756216  branch-misses            #      1.048 %
     4343060367  cache-references         #     17.799 M/sec
      428257037  cache-misses             #      1.755 M/sec

  263.779192511  seconds time elapsed
Copy to Clipboard Toggle word wrap

perf 도구는 또한 샘플을 기록할 수 있습니다. 예를 들어 make 명령과 해당 하위 항목에 대한 데이터를 기록하려면 다음을 사용합니다.

# perf record -- make all
Copy to Clipboard Toggle word wrap

이렇게 하면 샘플이 저장되는 파일과 수집된 샘플 수가 출력됩니다.

[ perf record: Woken up 42 times to write data ]
[ perf record: Captured and wrote 9.753 MB perf.data (~426109 samples) ]
Copy to Clipboard Toggle word wrap

PCL(Linux용 성능 counter) 도구는 OProfile과 충돌

OProfile과 PCP for Linux (PCL) 모두 동일한 하드웨어 성능 모니터링 장치 (PMU)를 사용합니다. PCL perf 명령을 사용하려는 동안 OProfile이 실행 중인 경우 OProfile을 시작할 때 다음과 같은 오류 메시지가 발생합니다.

Error: open_counter returned with 16 (Device or resource busy). /usr/bin/dmesg may provide additional information.

Fatal: Not all events could be opened.
Copy to Clipboard Toggle word wrap

perf 명령을 사용하려면 먼저 OProfile을 종료합니다.

# opcontrol --deinit
Copy to Clipboard Toggle word wrap

그런 다음 perf.data 를 분석하여 샘플의 상대적 빈도를 확인할 수 있습니다. 보고서 출력에는 샘플에 대한 명령, 오브젝트 및 기능이 포함됩니다. perf 보고서를 사용하여 perf.data 분석을 출력합니다. 예를 들어 다음 명령은 가장 많은 시간을 사용하는 실행 파일에 대한 보고서를 생성합니다.

# perf report --sort=comm
Copy to Clipboard Toggle word wrap

결과 출력:

# Samples: 1083783860000
#
# Overhead          Command
# ........  ...............
#
    48.19%         xsltproc
    44.48%        pdfxmltex
     6.01%             make
     0.95%             perl
     0.17%       kernel-doc
     0.05%          xmllint
     0.05%              cc1
     0.03%               cp
     0.01%            xmlto
     0.01%               sh
     0.01%          docproc
     0.01%               ld
     0.01%              gcc
     0.00%               rm
     0.00%              sed
     0.00%   git-diff-files
     0.00%             bash
     0.00%   git-diff-index
Copy to Clipboard Toggle word wrap

왼쪽의 열에는 샘플의 상대적 양이 표시되어 있습니다. 이 출력은 xsltproc 및cabundle xmltex에서 대부분의 시간을 소비한다는 것을 보여줍니다. 완료하는 데 걸리는 시간을 줄이려면 xsltproc 및 rhcos xmltex 에 집중하십시오. xsltproc 에서 실행한 함수를 나열하려면 다음을 실행합니다.

# perf report -n --comm=xsltproc
Copy to Clipboard Toggle word wrap

이 경우 다음을 생성합니다.

comm: xsltproc
# Samples: 472520675377
#
# Overhead  Samples                    Shared Object  Symbol
# ........ ..........  .............................  ......
#
    45.54%215179861044  libxml2.so.2.7.6               [.] xmlXPathCmpNodesExt
    11.63%54959620202  libxml2.so.2.7.6               [.] xmlXPathNodeSetAdd__internal_alias
     8.60%40634845107  libxml2.so.2.7.6               [.] xmlXPathCompOpEval
     4.63%21864091080  libxml2.so.2.7.6               [.] xmlXPathReleaseObject
     2.73%12919672281  libxml2.so.2.7.6               [.] xmlXPathNodeSetSort__internal_alias
     2.60%12271959697  libxml2.so.2.7.6               [.] valuePop
     2.41%11379910918  libxml2.so.2.7.6               [.] xmlXPathIsNaN__internal_alias
     2.19%10340901937  libxml2.so.2.7.6               [.] valuePush__internal_alias
Copy to Clipboard Toggle word wrap
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat