변수 sysfs에 대한 Linux 문서 scaling_max_freq
보고서
이 정책에 속하는 CPU가 실행될 수 있는 최대 주파수(kHz)입니다.
이 속성은 읽기-쓰기이며 정수를 나타내는 문자열을 쓰면 새로운 제한이 설정됩니다(
scaling_min_freq
속성 값보다 낮아서는 안 됩니다).
위의 내용은 다음 명령을 사용할 수 있다는 것입니다.
$ echo 2133000 >/sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
cpufreq 조정자에게 cpu0이 최대 2133Mhz로 실행되기를 원한다고 말하세요. 값을 설정한 후 다음을 통해 설정을 확인할 수 있습니다.
$ cat /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
이것은 2133000을 산출합니다
이제 이상한 부분이 생겨서 여기서 이런 질문을 하게 되었습니다.
커널 빌드와 같이 CPU를 많이 사용하는 작업 중에 값을 확인하면 /sys/devices/system/cpu/cpufreq/policy0/scaling_max_freq
훨씬 낮은 빈도인 1199000이 보고됩니다.
이제 혼란스럽습니다. 누가 이 값을 변경했습니까? CPU 주파수 조절기?
칭찬할 업데이트/정보
dmesg
제한 메시지를 표시하지 않습니다.make -j4
Intel CPU의 4개의 쿼드 파이프라인을 이런 식으로 사용하는데 사용됩니다. (model name : Intel(R) Core(TM) i5 CPU M 560 @ 2.67GHz
)uname -a
Linux work 4.18.3-arch1-1-ARCH #1 SMP PREEMPT Sat Aug 18 09:22:54 UTC 2018 x86_64 GNU/Linux
그래서 내 아치 리눅스 스톡 커널을 보여줍니다- CPUFreq 레귤레이터는
schedutil
/sys/devices/system/cpu/cpufreq/policy0/scaling_driver
프로그램acpi-cpufreq
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
예상대로 CPU의 최대 주파수를 2666000에 알려줍니다. (CPU 스트레스를 받는 동안 이 값을 확인해야 합니까, 아니면 유휴 상태에서 확인해야 합니까?)
노트북은 Lenovo Thinkpad X201t(태블릿) 모델이며, 전원 어댑터는 구입 시 해당 모델에 제공된 정품 전원 어댑터입니다. 다만, 일시적으로 주 전원 어댑터를 다른 어댑터로 교체해 드렸으며, 결과를 다시 알려드리겠습니다.
절대적으로 명확하십시오. scaling_max_freq
이 값은 높은 CPU 로드 작업이 종료된 후에 복원됩니다. "거의 유휴" 상태에서는 다시 2133000
원래 설정을 알려줍니다 .