“userspace”cpufreq 조정기를 사용할 수없고 cpu 주파수를 설정할 수 없습니다 1.70GHz GenuineIntel GNU/Linux #

랩톱 (Linux 실행)에서 CPU 주파수를 변경하려고하는데 성공하지 못했습니다.
세부 사항은 다음과 같습니다.

# uname -a
Linux yoga 3.12.21-gentoo-r1 #4 SMP Thu Jul 10 17:32:31 HKT 2014 x86_64 Intel(R) Core(TM) i5-3317U CPU @ 1.70GHz GenuineIntel GNU/Linux

# cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 2.60 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 2.60 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 2.42 GHz (asserted by call to hardware).
(similar information for cpus 1, 2 and 3)

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
performance powersave

처음에는 userspace governor를 커널에 내장했지만 모듈로 빌드하려고했습니다 (같은 결과). 위의 명령을 실행하는 동안로드되었으며로드 할 때 시스템 메시지를 찾을 수 없었습니다.

# lsmod
Module                  Size  Used by
cpufreq_userspace       1525  0
(some other modules)

그리고 주파수를 변경하기 위해 시도한 명령은 다음과 같습니다.

# cpufreq-set -f 800MHz
Error setting new values. Common errors:
- Do you have proper administration rights? (super-user?)
- Is the governor you requested available and modprobed?
- Trying to set an invalid policy?
- Trying to set a specific frequency, but userspace governor is not available,
   for example because of hardware which cannot be set to a specific frequency
   or because the userspace governor isn't loaded?

# cpufreq-set -g userspace
Error setting new values. Common errors:
- Do you have proper administration rights? (super-user?)
- Is the governor you requested available and modprobed?
- Trying to set an invalid policy?
- Trying to set a specific frequency, but userspace governor is not available,
   for example because of hardware which cannot be set to a specific frequency
   or because the userspace governor isn't loaded?

어떤 아이디어?



답변

시스템에서이라는 새 드라이버를 사용하고 있기 때문 intel_pstate입니다. 이 드라이버를 사용할 때는 두 가지 관리자 만 사용할 수 있습니다 : powersaveperformance.
관리자 userspace는 이전 acpi-cpufreq드라이버 에서만 사용할 수 있습니다 ( intel_pstate부팅시 비활성화하면 자동으로 사용되며 다음으로 관리자 / 주파수를 설정 cpupower).

  • 현재 드라이버 비활성화 : intel_pstate=disable커널 부트 라인에 추가
  • 부팅 한 다음 userspace모듈 을로드하십시오 .modprobe cpufreq_userspace
  • 주지사 설정 : cpupower frequency-set --governor userspace
  • 빈도를 설정하십시오. cpupower --cpu all frequency-set --freq 800MHz

답변

대답은 귀하의 질문에 있습니다.

for core in $(seq 0 "$(($(getconf _NPROCESSORS_ONLN) - 1))"); do
echo {performance|powersave} >/sys/devices/system/cpu/cpu$core/cpufreq/scaling_governor ;
done

이것과 커널은 userspace governor가 활성화 된 상태에서 컴파일해야합니다.