영어프랑스어스페인어

Ad


온웍스 파비콘

perf-top - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 perf-top을 실행하세요.

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 perf-top 명령입니다.

프로그램:

이름


perf-top - 시스템 프로파일링 도구입니다.

개요


반환 한 상단 [-이자형 | --이벤트=이벤트] [ ]

기술


이 명령은 성능 카운터 프로필을 실시간으로 생성하고 표시합니다.

옵션


-a, --all-cpus
시스템 전체 컬렉션. (기본)

-씨 , --count=
샘플 이벤트 기간.

-씨 , --cpu=
제공된 CPU 목록에서만 모니터링합니다. 여러 개의 CPU를 하나의 CPU로 제공할 수 있습니다.
공백 없이 쉼표로 구분된 목록: 0,1. CPU 범위는 -: 0-2로 지정됩니다.
기본값은 모든 CPU를 모니터링하는 것입니다.

-디 , --delay=
새로 고침 사이에 지연되는 시간(초)입니다.

-이자형 , --이벤트=
PMU 이벤트를 선택합니다. 선택은 상징적인 이벤트 이름일 수 있습니다(사용 반환 한 명부 목록에
모든 이벤트) 또는 rNNN 형식의 원시 PMU 이벤트(eventsel+umask)(여기서 NNN은
XNUMX진수 이벤트 설명자.

-이자형 , --항목=
이 많은 기능을 표시합니다.

-에프 , --count-필터=
이보다 더 많은 이벤트가 있는 함수만 표시합니다.

--그룹
카운터를 카운터 그룹에 넣습니다.

-에프 , --주파수=
이 빈도로 프로필을 작성합니다.

-i, --상속
자식 작업은 카운터를 상속하지 않습니다.

-케이 , --vmlinux=
vmlinux의 경로입니다. 주석 기능에 필요합니다.

-중 , --mmap-페이지=
mmap 데이터 페이지 수(XNUMX의 거듭제곱이어야 함) 또는 추가된 크기 사양
단위 문자 - B/K/M/G. 크기는 반올림하여 가장 가까운 페이지의 XNUMX승을 얻습니다.
값.

-피 , --pid=
기존 프로세스 ID의 프로필 이벤트(쉼표로 구분된 목록)

-티 , --tid=
기존 스레드 ID의 프로필 이벤트(쉼표로 구분된 목록)

-u, --uid=
uid가 소유한 스레드에 이벤트를 기록합니다. 이름 또는 번호.

-아르 자형 , --실시간=
이 RT SCHED_FIFO 우선 순위로 데이터를 수집합니다.

--sym-주석=
이 기호에 주석을 답니다.

-K, --hide_kernel_symbols
커널 기호를 숨깁니다.

-U, --hide_user_symbols
사용자 기호를 숨깁니다.

--demangle-커널
디맹글 커널 기호.

-D, --dump-symtab
프로파일링에 사용된 기호 테이블을 덤프합니다.

-v, --자세한
더 자세한 내용을 표시합니다(카운터 열기 오류 표시 등).

-z, --제로
디스플레이 업데이트 전반에 걸쳐 기록이 없습니다.

-s, --sort
키별 정렬: pid, comm, dso, 기호, 상위, srcline, 가중치, local_weight, 중단,
in_tx, 트랜잭션, 오버헤드, 샘플, 기간. --sort에 대한 설명을 참조하세요.
성능 보고서 매뉴얼 페이지.

--필드=
출력 필드 지정 - CSV 형식으로 여러 키를 지정할 수 있습니다. 다음 필드
사용 가능:overhead,overhead_sys,overhead_us,overhead_children,샘플 및
기간. 또한 모든 정렬 키를 포함할 수 있습니다.

기본적으로 --field에 지정되지 않은 모든 정렬 키가 추가됩니다.
자동으로.

-n, --show-nr-샘플
샘플 수가 포함된 열을 표시합니다.

--show-총 기간
기간 합계가 포함된 열을 표시합니다.

--dsos
이러한 dsos의 기호만 고려하십시오. 이 옵션은 비율에 영향을 미칩니다.
머리 위 기둥. 자세한 내용은 --percentage를 참조하세요.

--통신
이러한 통신에서는 기호만 고려하십시오. 이 옵션은 비율에 영향을 미칩니다.
머리 위 기둥. 자세한 내용은 --percentage를 참조하세요.

--기호
다음 기호만 고려하십시오. 이 옵션은 오버헤드 비율에 영향을 미칩니다.
열. 자세한 내용은 --percentage를 참조하세요.

-M, --디스어셈블러 스타일=
objdump에 대한 디스어셈블러 스타일을 설정합니다.

--원천
소스 코드를 어셈블리 코드와 인터리브합니다. 기본적으로 활성화, 비활성화
--소스 없음.

--asm-raw
어셈블리 명령어의 원시 명령어 인코딩을 표시합니다.

-g
콜 그래프(스택 체인/백트레이스) 기록을 활성화합니다.

--call-graph [모드, 유형, 최소[,한계],주문[,키][,분기]]
호출 그래프(스택 체인/역추적) 기록을 설정하고 활성화합니다. -g를 의미합니다. 보다
자세한 내용은 perf-record 및 perf-report 매뉴얼 페이지의 --call-graph 섹션을 참조하세요.

--어린이들
하위 항목의 콜체인을 상위 항목에 축적하여
산출. 출력에는 새로운 "하위" 열이 있으며 데이터를 기준으로 정렬됩니다.
-g/--call-graph 옵션이 활성화되어 있어야 합니다. 자세한 내용은 '오버헤드 계산' 섹션을 참조하세요.
자세한 내용은.

--최대 스택
콜체인을 구문 분석할 때 지정된 범위를 초과하는 스택 깊이 제한을 설정합니다.
깊이는 무시됩니다. 이는 정보 손실과 속도 사이의 균형입니다.
매우 긴 콜체인 스택을 가질 수 있는 작업 부하에 대해 특히 처리합니다.

기본값 : 127

--무시-호출자=
주어진 정규식과 일치하는 함수의 피호출자를 무시합니다. 이는 다음과 같은 효과가 있습니다.
각 함수의 호출자를 호출 그래프 트리의 한 위치에 수집합니다.

--퍼센트 제한
해당 비율 미만의 오버헤드가 있는 항목은 표시하지 않습니다. (기본값: 0).

--백분율
필터링된 항목의 오버헤드 비율을 표시하는 방법을 결정합니다. 필터는 다음과 같습니다.
--comms, --dsos 및/또는 --symbols 옵션과 TUI의 확대/축소 작업에 의해 적용됨
(스레드, DSO 등).

'상대'는 필터링된 항목에만 상대적이라는 의미입니다.
표시된 항목의 합계는 항상 100%입니다. "절대적"은 유지한다는 의미입니다.
필터 적용 전후의 원래 값입니다.

-w, --열-너비=
큰 터미널 가독성을 위해 각 열 너비를 제공된 목록에 적용합니다. 0은
제한 없음(기본 동작)

--proc-맵-시간 초과
기존 스레드 /proc/XXX/mmap를 처리할 때 시간이 오래 걸릴 수 있습니다.
파일이 클 수 있습니다. 이러한 경우에는 타임아웃이 필요합니다. 이 옵션은 시간을 설정합니다.
아웃 한도. 기본값은 500ms입니다.

-b, --branch-any
가져온 분기 스택 샘플링을 활성화합니다. 모든 유형의 분기를 샘플링할 수 있습니다. 이것은
--branch-filter any의 바로 가기. 자세한 내용은 --branch-filter를 참조하십시오.

-j, --분기 필터
가져온 분기 스택 샘플링을 활성화합니다. 각 샘플은 일련의 연속 촬영을 캡처합니다.
가지. 각 샘플로 캡처된 분기 수는 기본
하드웨어, 관심 분기 유형 및 실행된 코드. 가능하다
필터를 활성화하여 캡처된 분기 유형을 선택합니다. 전체 목록을 보려면
수정자는 성능 기록 맨페이지를 참조하세요.

해당 옵션에는 any_call, any_ret, ind_call, cond 중 하나 이상의 분기 유형이 필요합니다.
권한 수준은 생략될 수 있으며, 이 경우 관련 권한 수준은
이벤트는 분기 필터에 적용됩니다. 커널(k) 및 하이퍼바이저(hv) 권한 모두
수준에는 권한이 적용됩니다. 여러 이벤트를 샘플링할 때 분기 스택 샘플링
모든 샘플링 이벤트에 대해 활성화됩니다. 샘플링된 분기 유형은 모든 이벤트에 대해 동일합니다.
다양한 필터는 쉼표로 구분된 목록으로 지정되어야 합니다: --branch-filter any_ret,u,k
일부 프로세서에서는 이 기능을 사용할 수 없습니다.

인터렉티브 격려 열쇠


[디]
디스플레이 새로 고침 지연.

[과]
표시할 항목 수입니다.

[이자형]
여러 카운터가 활성화될 때 표시되는 이벤트입니다.

[에프]
프로필 표시 필터(>= 적중 횟수).

[F]
주석 표시 필터(>= 전체 %).

[에스]
기호에 주석을 답니다.

[NS]
주석을 중지하고 전체 프로필 표시로 돌아갑니다.

[지]
디스플레이 업데이트 전반에 걸쳐 이벤트 카운트 제로화를 전환합니다.

[qQ]
떠나다.

매핑되지 않은 키를 누르면 메뉴가 표시되고 입력하라는 메시지가 표시됩니다.

간접비 계산


오버헤드는 다음과 같이 두 개의 열로 표시될 수 있습니다. 어린이셀프 성능이 수집될 때
콜체인. 그만큼 자기 오버헤드는 단순히 해당 기간의 모든 기간 값을 더하여 계산됩니다.
항목 - 일반적으로 기능(기호)입니다. 이것이 perf가 전통적으로 보여주는 가치이며,
모든 것의 합 자기 오버헤드 값은 100%여야 합니다.

XNUMXD덴탈의 어린이 오버헤드는 하위 함수의 모든 기간 값을 추가하여 계산됩니다.
그렇지 않더라도 상위 수준 기능의 총 오버헤드를 표시할 수 있습니다.
직접 실행하는 경우가 많습니다. 어린이 여기서는 다른(부모)에서 호출되는 함수를 의미합니다.
기능.

모든 금액을 합산하면 혼란스러울 수도 있습니다. 어린이 간접비 값이 100%를 초과합니다.
그들 각각은 이미 축적되어 있습니다. 자기 하위 함수의 오버헤드입니다. 하지만 함께
이를 활성화하면 사용자는 샘플이 존재하더라도 가장 많은 오버헤드가 있는 기능을 찾을 수 있습니다.
아이들에게 퍼졌습니다.

다음 예를 고려하십시오. 아래와 같이 세 가지 기능이 있습니다.

.피트 C
무효 foo(공허) {
/* 뭔가를 해라 */
}

보이드 바(void) {
/* 뭔가를 해라 */
푸();
}

int main(void) {
술집()
0가 돌아;
}
.피트

이 경우 ~의 자녀이다 의 직계 자녀입니다. 본관 so 또한
의 아이 본관. 다른 말로, 본관 의 부모이다 의 부모이다
.

모든 샘플이 오직. 콜체인으로 기록되는 경우
출력은 perf의 일반적인(자체 오버헤드 전용) 출력에서 ​​아래와 같이 표시됩니다.
보고서 :

.피트 C
오버헤드 기호
........ .................
60.00% 푸
|
--- 푸

본관
__libc_start_main

40.00% 바
|
--- 술집
본관
__libc_start_main
.피트

--children 옵션이 활성화되면 자기 하위 함수의 오버헤드 값(예:
)를 상위 항목에 추가하여 계산합니다. 어린이 간접비. 이 경우에는
보고서는 다음과 같이 표시될 수 있습니다.

.피트 C
어린이 자기 기호
........ .......... ...................
100.00% 0.00% __libc_start_main
|
--- __libc_start_main

100.00% 0.00% 메인
|
--- 기본
__libc_start_main

100.00% 40.00% 바
|
--- 술집
본관
__libc_start_main

60.00% 60.00% 푸
|
--- 푸

본관
__libc_start_main
.피트

위 출력에서, 자기 간접비 (60%)가 추가되었습니다. 어린이 간접비
, 본관__libc_start_main. 마찬가지로 자기 간접비 (40%)가 추가되었습니다.
어린이 간접비 본관\\_\_libc_start_main.

So \\_\_libc_start_main본관 동일(100%)하므로 먼저 표시됩니다. 어린이
오버헤드(XNUMX이더라도 자기 오버헤드) 그들은 다음의 부모입니다.
.

v3.16부터 어린이 오버헤드는 기본적으로 표시되며 출력은 해당 항목에 따라 정렬됩니다.
가치. 그만큼 어린이 --no-children 옵션을 지정하면 오버헤드가 비활성화됩니다.
명령줄 또는 추가 보고서.어린이 = 그릇된 or 탑.어린이 = 그릇된 성능에
구성 파일.

onworks.net 서비스를 사용하여 온라인으로 perf-top을 사용하세요.


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad