Turbostat는 --show 옵션을 사용하여 필수 열만 표시하지 않습니다.

Turbostat는 --show 옵션을 사용하여 필수 열만 표시하지 않습니다.

Manjaro 18.1.5에서 tubestat를 사용하고 있습니다.

$ pacman -Qs turbostat
local/turbostat 5.4-3 (linux-tools)

매뉴얼 페이지에는 다음과 같이 나와 있습니다.

--show  column  show  only  the  specified built-in columns.  May be invoked multiple times, or with a comma-separated list of column names.  Use "--show
       sysfs" to show the sysfs statistics columns as a group.
...
...
--list display column header names available for use by --show and --hide, then exit.

열을 표시할 때 다음을 사용할 수 있습니다.

$ sudo turbostat --list
usec,Time_Of_Day_Seconds,Core,CPU,APIC,X2APIC,Avg_MHz,Busy%,Bzy_MHz,TSC_MHz,IRQ,SMI,POLL,C1,C1E,C3,C6,C7s,C8,C9,C10,POLL%,C1%,C1E%,C3%,C6%,C7s%,C8%,C9%,C10%,CPU%c1,CPU%c3,CPU%c6,CPU%c7,CoreTmp,PkgTmp,GFX%rc6,GFXMHz,Pkg%pc2,Pkg%pc3,Pkg%pc6,Pkg%pc7,Pkg%pc8,Pkg%pc9,Pk%pc10,PkgWatt,CorWatt,GFXWatt

열에 사용 가능한 다양한 C 레벨을 볼 수 있으므로 C1과 C2만 보려면 다음을 실행할 수 있습니다.

$ sudo turbostat --show C1,C2
Invalid counter name: C1

내가 왜 받나요?잘못된 카운터 이름: C1?

--hide옵션을 사용하여 C1 열을 생략하려고 하면 예상대로 작동합니다.

$ sudo turbostat --hide C1,C2
...
...
Core    CPU Avg_MHz Busy%   Bzy_MHz TSC_MHz IRQ SMI POLL    C1E C3 ...
...

모든 C 상태를 참조 하면 sysfs다시 예상대로 작동합니다.

$ sudo turbostat --show sysfs
...
POLL    C1  C1E C3  C6  C7s C8  C9  C10 ...
...

--show또한 다양한 열(POLL, C7, C1%...)을 나열하는 옵션을 사용해 보았지만 결과는 항상 위의 C1 및 C2 열 예와 동일합니다.

내가 무엇을 놓치고 있나요?

답변1

나는 이유를 알아내려고 노력했고 이것이 대답에 대한 최선의 시도였습니다. 내가 틀렸다면 그렇다고 말해주세요.

현재 Turbostat 버전의 소스 코드는 여기에서 찾을 수 있습니다.여기.

--show옵션으로 터보를 구동 시키면 ,기능bic_lookup불렀다. 다음과 같은 C 레벨 이름으로 Turbostat를 실행하면: --show C1,C3잠깐만요, 저는 항상 다음과 같은 결과를 얻습니다.이 오류.

내가 보기엔 "문제"는이 줄, 왜냐하면이 구조옵션 매개변수로 사용하는 C1, C3 등의 이름은 없습니다 --show. 에서도 말한다논평:

1. built-in only, the sysfs counters are not here -- we learn of those at run-time

내가 사용하는 C 레벨은 sysfs 카운터입니다. Turbostat는 런타임에만 이에 대해 알고 있지만bic_lookup 함수의 루프이러한 하드코딩된 열 이름에만 작동합니다. 구조에 직접 작성된 이름 중 하나를 사용하면 bicTurbostat는 실제로 예상한 대로 해당 열만 표시합니다.

유일한 옵션은 --show sysfs내가 원하는 열을 인쇄하는 를 사용하는 것 같습니다.

요약하면 매뉴얼 페이지에는 다음과 같이 나와 있습니다.

--list display column header names available for use by --show and --hide, then exit.

실행 하면 --listC1, C3 등의 컬럼명까지 표시되기 때문이다.

(저는 프로그래머가 아니기 때문에 용어가 헷갈리거나 틀릴 수 있습니다. 필요에 따라 제 의견을 자유롭게 편집해 주시기 바랍니다.)

관련 정보