내 노트북 Thinkpad T400은 Ubuntu 16.04를 실행하며 2개의 CPU 코어 cpu0
와 cpu1
.
$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
797963
797963
$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_setspeed
800000
800000
/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
그런 다음 내용을 1600000
다음 으로 변경하도록 편집합니다 .
파일 을 변경하지 않고 cpu1의 실시간 주파수도 변경되는 이유는 무엇입니까
scaling_setspeed
?$ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_setspeed 1600000 800000 $ cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq 1595928 1595926
다음 명령이 위와 다른 결과를 표시하는 이유는 무엇입니까?
$ watch grep \"cpu MHz\" /proc/cpuinfo Every 2.0s: grep "cpu MHz" /proc/cpuinfo Thu Jan 25 17:31:01 2018 cpu MHz : 1600.000 cpu MHz : 800.000
감사해요.
변경 사항은 현재 코어에만 영향을 미치고 둘 다에는 영향을 미치지 않는 것 같습니다.
$ cat /sys/devices/system/cpu/cpu0/cpufreq/affected_cpus
0
$ cat /sys/devices/system/cpu/cpu1/cpufreq/affected_cpus
1
답변1
이는 하드웨어 제한일 수 있습니다. 많은 CPU에서는 동일한 주파수에서 실행되기 위해 모든 코어(때때로 동일한 칩에 있는 코어 쌍)가 필요합니다. affected_cpus
동일한 디렉터리에 있는 이 파일은 어떤 코어가 동일한 빈도로 강제로 실행되는지 알려줍니다.
바라보다https://www.kernel.org/doc/Documentation/cpu-freq/user-guide.txt일부 문서.