이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는dlestat 명령입니다.
프로그램:
이름
Idlestat - CPU 전원 상태 분석 도구입니다.
개요
추적 모드:
유휴 상태 --trace -f|--추적 파일 파일 이름 -t|--기간 초 [OPTION] [명령]
보고 모드:
유휴 상태 --import -f|--추적 파일 파일 이름 [OPTION]
기술
유휴상태 두 가지 모드가 제공됩니다: 더듬다 모드, CPU가 얼마나 오랫동안 사용되었는지 측정합니다.
다양한 유휴 상태 및 작동 상태를 파악하고, 캡처된 이벤트를 분석하고, 기록하며,
보고서를 생성합니다. ~에 신고 모드, 추적 파일을 읽고 기록된 이벤트를 분석합니다.
추적 파일을 작성하고 보고서를 생성합니다. Idlestat의 보고서는 전력 통계를 보여줍니다.
관련 상태. 현재는 P 상태, C 상태 및 IRQ 상태를 처리합니다.
추적 모드의 경우 유휴 상태 C-를 모니터링하고 캡처하기 위해 커널의 FTRACE 기능에 의존합니다.
시간 간격에 따른 CPU의 상태 및 P 상태 전환. 즉, 추적 모드의 경우
유휴 상태에는 FTRACE 관련 구성이 활성화된 커널이 필요합니다. 그리고 그것을 사용하기 때문에
FTRACE, 추적 모드로 실행 시 루트 권한이 필요합니다. Idlestat는 다음을 추출합니다.
추적 파일의 다음 정보:
CPU가 특정 C 상태에 들어가고 나가는 시간
CPU가 특정 P 상태에 들어가고 나가는 시간
IRQ 증가
성공적인 실행 후,dlestat는 다음 정보를 계산하고 보고합니다.
- CPU별로 각 C 상태에서 소요된 총 시간, 평균 시간, 최소 시간, 최대 시간입니다.
- CPU별로 각 P 상태에서 소요된 총 시간, 평균 시간, 최소 시간, 최대 시간입니다.
- 클러스터의 모든 CPU가 클러스터에 있었던 총 시간, 평균 시간, 최소 시간, 최대 시간
모든 구성 CPU의 "가장 얕은"(실행에 가장 가까운) 상태입니다.
- 특정 IRQ로 인해 CPU가 유휴 상태를 종료한 횟수(CPU별 및 IRQ별)
옵션
--추적하다
위에서 언급한 것처럼 추적 모드에서 IDLESTAT를 실행하려면 루트 권한이 필요합니다. 함께 사용 -t
과 -f 실행 기간과 추적 출력 파일 이름을 각각 지정합니다.
--수입
보고 모드에서 Idlestat를 실행합니다. 함께 사용 -f 가져올 추적 파일을 지정합니다.
-f, --추적 파일 파일 이름
생성할 추적 파일 이름을 지정합니다( --추적하다) 또는 읽습니다( --수입).
-t, --지속 초
캡처 시간(초)
[명령]
명령 인수가 주어지면,dlestat는 명령을 실행하기 위해 하위 항목을 분기합니다.
명령이 실행될 때 관련 상태를 캡처할 수 있습니다. 다음과 같은 경우
실행 중인 명령이 지정된 시간 이전에 종료되지 않습니다. -t, 유휴 상태는
자식 프로세스에 SIGTERM을 보내 종료를 요청합니다. 실행할 명령인 경우
지정된 시간보다 짧게 지속됩니다. -t, Idlestat은 명령 후에 종료됩니다.
끝마친.
명령이 없을 때,dlestat는 추적 캡처 및 기타 작업을 성실하게 수행합니다.
-b, --baseline_trace 기준_파일 이름
추적 비교를 위한 기준 파일 이름을 지정합니다. 보다 비교 과 사용 예 for
자세한 정보.
-c, --게으른
ACPI 용어로 유휴 상태, C 상태, 통계를 표시합니다. 둘 다 아닌 경우 이것이 기본 모드입니다. -w
...도 아니다 -p 설정됩니다. 참고하세요 -w, -c및 -p 독점적이지 않습니다. 즉, 선택할 수 있습니다.
세 가지의 조합.
-e, --에너지 모델 파일 에너지_모델
에너지 모델 파일을 지정합니다. 보다 에너지 모델 에너지 파일 설명을 위해
형식입니다.
-h, --도움, -?
간단한 도움말 메시지를 인쇄합니다.
-o, --결과물 파일 파일 이름
통계를 출력할 파일 이름을 지정합니다. 지정하지 않으면 통계는 다음과 같습니다.
stdout으로 인쇄됩니다.
-p, --빈도
cpufreq(또는 P-state) 통계를 표시합니다.
-r, --보고서 형식
보고서 형식을 지정합니다. 유효한 유형은 기본값, boxless, csv 및 비교입니다.
-v, --말 수가 많은
상세 수준을 지정합니다. 이 옵션은 여러 번 지정할 수 있습니다. 각
옵션을 복사하면 상세 수준이 XNUMX씩 증가합니다. 현재 가장 높은 수준입니다.
모든 메시지에 사용되는 상세 수준은 2입니다.
-w, --깨우다
웨이크업 통계를 표시합니다.
-B, --박스리스
보고서 형식을 상자 없음으로 설정
-C, --csv
보고서 형식을 쉼표로 구분된 값(CSV)으로 설정
-NS, --폴링 간격
데이터를 이동할 시간이 되었는지 확인하는 데 사용되는 커널 폴링 간격을 설정합니다.
커널 FTRACE 버퍼를 다른 위치로 이동합니다.
-NS, --버퍼 크기
사용할 커널 FTRACE 버퍼 크기를 설정합니다.
-V, --번역
Idlestat 버전 정보를 표시하고 종료합니다.
비교
비교 보고서는 활성 추적(다음으로 지정됨) 간의 변경 사항을 비교하는 데 사용됩니다.
-f,--추적 파일) 및 기준선 추적. 기본 추적을 제공하여 활성화됩니다.
(-b,--baseline_trace) 및 "를 사용하여 비교 보고서 스타일을 지정합니다.-r 비교".
에너지 모델
다음은 Idlestat 에너지 모델 파일의 형식을 설명합니다(포함된 파일 사용).
Energy_model 파일의 예):
#으로 시작하거나 비어 있는 줄은 무시됩니다.
먼저 클러스터 수를 지정합니다.
클러스터 1
각 클러스터(클러스터A, 클러스터B 등으로 명명됨)에 대해 최대 상태 및 C 상태 수를 지정합니다.
있습니다. Idlestat는 올바른 수의 클러스터가 제공되었는지 확인합니다.
#
ClusterA: 16개 캡 상태 5개 C 상태
그런 다음 각 P 상태에 대한 이름, 클러스터 전력 및 코어 전력을 지정합니다(idlestat는
제공된 P-상태의 수가 올바른 경우) 클러스터에 있습니다.
P-상태:
# 속도, 클러스터 전력, 코어 전력
+ 2901 6200 3200
+ 2900 6190 3190
+ 2800 6180 3180
+ 2700 6170 3170
+ 2500 6160 3160
+ 2400 6150 3150
+ 2300 6140 3140
+ 2200 6130 3130
+ 2000 6120 3120
+ 1900 6110 3110
+ 1800 6100 3100
+ 1700 6090 3090
+ 1600 6080 3080
+ 1400 6070 3070
+ 1300 6060 3060
+ 1200 6050 3050
그런 다음 각 C 상태에 대한 이름, 클러스터 전력 및 코어 전력을 지정합니다(idlestat는
제공된 C 상태의 개수가 올바른 경우)를 클러스터에 포함합니다.
C 상태:
C1-IVB 25 0
C1E-IVB 30 0
C3-IVB 35 0
C6-IVB 40 0
C7-IVB 35 0
마지막으로 웨이크업 전력을 지정합니다.
웨이크업 210 6
각 클러스터에 대해 반복합니다.
자취 FILE FORMAT
Idlestat에는 ftrace 형식을 기반으로 하는 자체 추적 파일 형식이 있습니다(참조:
커널 소스의 Documentation/trace/ftrace.txt). 표준 FTRACE 항목 외에도
유휴 상태는 CPU 토폴로지, C 상태 정보 및 일부 인공 P 상태 항목을 추가합니다.
Idlestat는 표준 FTRACE 형식과 "trace-cmd 보고서" 형식도 가져올 수 있습니다. 참고하세요
FTRACE 또는 Trace-cmd 추적 파일에는 CPU 토폴로지 및 C 상태 정보가 없기 때문에
해당 추적이 캡처되는 컴퓨터에서 사용해야 합니다.
REPORT 형식
현재dlestat는 기본, boxless, csv 및 비교의 네 가지 보고서 형식을 지원합니다.
1. 기본값: -c에 해당하는 경우 C-상태, P-상태 및 IRQ 상태 통계 테이블을 표시합니다.
-p 및 -w 명령줄 옵션이 설정됩니다. 테이블에는 - 및 | 경계로.
2. 상자 없음: - 및 |가 없는 기본값입니다. 테이블 경계로. 이것은 점자에 가깝습니다
기본 것보다 터미널 친화적
3. csv: 쉼표로 구분된 값입니다. 이는 다음과 같은 스크립팅 언어로 처리하기가 더 쉽습니다.
awk와 Perl로요. 또한 스프레드시트 소프트웨어로 처리하는 것이 더 쉽습니다.
4. 비교: 변경 사항을 표시한다는 점을 제외하면 기본 보고서 스타일과 유사합니다.
기본 추적과 비교하여 활성 추적에서. 제공함으로써 활성화됩니다.
기준선 추적(--baseline) 및 "-r을 사용하여 비교 보고서 스타일 지정
비교".
사용 예
Idlestat 바이너리가 PATH에 있다고 가정합니다.
1. 추적을 실행하고 결과를 사후 처리합니다(기본값은 C 상태 통계만 표시하는 것임).
sudo 유휴 상태 --trace -f /tmp/mytrace -t 10
2. 추적을 실행하고 결과를 후처리하고 모든 통계를 인쇄합니다.
sudo 유휴 상태 --trace -f /tmp/mytrace -t 10 -p -c -w
3. 외부 워크로드로 추적을 실행하고 결과를 사후 처리합니다.
sudo 유휴 상태 --trace -f /tmp/mytrace -t 10 -p -c -w -- rt-app /tmp/mp3.json
4. 이전에 캡처한 추적을 후처리합니다.
유휴 상태 --import -f /tmp/mytrace
5. 추적을 실행하고 결과를 사후 처리한 후 모든 통계를 파일로 인쇄합니다.
sudo 유휴 상태 --trace -f /tmp/mytrace -t 10 -p -c -w -o /tmp/myreport
6. 시스템 동작을 변경하기 전과 후에 비교 추적을 실행합니다.
sudo 유휴 상태 --trace -f /tmp/baseline -t 10
sudo 유휴 상태 --trace -f /tmp/changedstate -t 10
유휴 상태 --import -f /tmp/changedstate -b /tmp/baseline -r 비교
제한 사항
획득 중에 유휴 상태는 추적을 방해하지 않도록 대기 상태를 유지하려고 합니다.
이러한 이유로 추적은 고정된 버퍼 크기로 버퍼링됩니다. 만약 기간이
획득은 버퍼가 저장할 수 있는 것보다 더 많은 트레이스를 생성합니다.
결과가 잘립니다.
onworks.net 서비스를 사용하여 온라인으로 아이들 상태 사용