저는 주로 노트북을 데스크탑으로 사용하기 때문에 CPU를 최대 주파수로 설정하려고 합니다.
CPU는 Intel Core i5-3337U(하이퍼 스레딩이 포함된 듀얼 코어)이며 Intel Turbo Boost 기술을 사용하여 최대 2.5GHz(활성 코어 2개) 및 2.70GHz(활성 코어 1개)로 제한됩니다.
시작하기 전에 LINPACK을 사용하여 부하가 걸린 상태에서 CPU가 도달할 수 있는 주파수를 테스트하여 활성 절전 기능에도 불구하고 공칭 최대값인 2.5GHz에 도달할 수 있는지 확인했습니다. 그럴 수 있습니다(실행 측정 watch -n 1 "cat /proc/cpuinfo | grep \"cpu MHz\""
).
저는 다음과 같은 cpufreq-set
접근 방식을 선택했습니다. 패키지를 설치했고 cpufrequtils
처음에는 CPU 관리자를 "성능" 실행으로 설정하려고 했습니다 cpufreq-set -g performance
. 이것이 유휴 주파수 범위에 어떤 영향을 미쳤는지는 알 수 없지만 결과는 만족스럽지 않았습니다. 이 상태에서 모든 CPU의 주파수는 1.0GHZ-2.4GHZ 범위에서 지속적으로 떨어졌다가 올라갔습니다.
그래서 결국 고정 주파수를 설정할 수 있도록 CPU 거버너를 "사용자 공간"으로 설정하려고 했습니다. 그런데 다음과 같은 오류가 발생했습니다.
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
. 그래서 intel_pstate=disable
커널 매개변수를 추가 /etc/defaults/grub
하고 업데이트하여 비활성화해 보았습니다 grub
. 그러나 재부팅 후에도 아무 것도 변경되지 않았으며 여전히 "사용자 공간" 관리자로 전환할 수 없습니다.
tl;dr
"사용자 공간" 관리자를 어떻게 활성화할 수 있나요?
- 또는 -
CPU 주파수를 항상 최대값으로 유지하려면 어떻게 해야 합니까?
답변1
모드를 사용하면 performance
CPU 주파수는 항상 합리적인 수준으로 높아집니다. 프로세서 자체는 주파수 드라이버를 통해 지시받은 작업에 관계없이 부하가 없거나 매우 가벼운 조건에서 CPU 주파수를 백오프할 수 있습니다. performance
모드 보다 더 공격적인 로드 응답에 비해 CPU 주파수는 없습니다 .
면책 조항: 내 경험의 대부분은 intel_pstate 드라이버에 관한 것입니다.
편집하다:
보고된 CPU 주파수가 해석되는 방식에 주의하세요. acpi-cpufreq 드라이버를 사용하면 실제 CPU 주파수가 아닌 요청된 CPU 주파수를 얻게 됩니다. intel_pstate 드라이버를 사용하면 마지막 샘플 간격 동안의 평균 실제 CPU 주파수를 얻을 수 있습니다. 제 생각에는 acpi-cpufreq 드라이버는 이 영역에서 매우 잘못된 정보를 제공합니다.
답변2
또 다른 방법이 있습니다. 이 제안을 시도하려면 cpufreq 및 intel pstate 설정으로 인한 변경 사항을 실행 취소하세요. 또한 모든 주지사 설정을 비활성화하십시오.
전원 관리가 주 목적인 도구인 TLP를 설치합니다. CPU 주파수 구성과 같이 더 많은 기능이 있습니다.
sudo add-apt-repository ppa:linrunner/tlp; sudo apt-get update; sudo apt-get install tlp tlp-rdw
sudo gedit /etc/default/tlp
이 줄을 찾아보세요
CPU_SCALING_MIN_FREQ_ON_AC=0
CPU_SCALING_MAX_FREQ_ON_AC=0
CPU_SCALING_MIN_FREQ_ON_BAT=0
CPU_SCALING_MAX_FREQ_ON_BAT=0
0을 모두 2500000으로 변경합니다. 여기서 주파수는 khz, 즉 2.5ghz입니다.
저장하고 이제 CPU 주파수를 모니터링하세요.
추가 정보 및 출처:http://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html#installation
http://linrunner.de/en/tlp/docs/tlp-configuration.html#scaling