由於我主要將筆記型電腦用作桌上型電腦,因此我嘗試將其 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
;但是,重新啟動後,沒有任何變化,我仍然無法切換到「用戶空間」調控器。
太長了;博士
如何啟用「用戶空間」調控器?
- 或者 -
如何設定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