Da ich meinen Laptop meistens als Desktop verwende, versuche ich, die CPU auf die maximale Frequenz einzustellen.
Bei der CPU handelt es sich um einen Intel Core i5-3337U (Dual-Core mit Hyper-Threading), der mit der Intel Turbo Boost-Technologie auf 2,5 GHz (mit 2 aktiven Kernen) bzw. 2,70 GHz (mit 1 aktiven Kern) getaktet wird.
Zuvor habe ich mittels LINPACK getestet, welche Frequenz die CPU unter Last erreichen kann, um zu sehen, ob sie trotz aktiver Stromsparfunktionen den nominellen Maximalwert von 2,5GHz erreichen kann; das war möglich (im laufenden Betrieb gemessen watch -n 1 "cat /proc/cpuinfo | grep \"cpu MHz\""
).
Ich habe mich für diesen Ansatz entschieden cpufreq-set
: Ich habe das cpufrequtils
Paket installiert und zunächst versucht, den CPU-Regler auf „Leistung“ einzustellen cpufreq-set -g performance
. Ich kann nicht sagen, ob dies irgendwie den Frequenzbereich im Leerlauf beeinflusst hat, das Ergebnis war jedoch nicht zufriedenstellend: In diesem Zustand fiel die Frequenz aller CPUs ständig ab und stieg im Bereich von 1,0 GHz bis 2,4 GHz an.
Ich habe also versucht, den CPU-Regler auf „Userspace“ zu stellen, um eventuell eine feste Frequenz einstellen zu können; dabei kam allerdings folgender Fehler:
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?
Nach einigen Recherchen habe ich herausgefunden, dass der „Userspace“-Governor bei Verwendung des intel_pstate
Treibers nicht verfügbar ist. Ich habe also versucht, ihn zu deaktivieren, indem ich ihn intel_pstate=disable
zu den Kernel-Parametern hinzugefügt /etc/defaults/grub
und aktualisiert habe grub
. Nach dem Neustart hat sich jedoch nichts geändert und ich kann immer noch nicht zum „Userspace“-Governor wechseln.
tl;dr
Wie kann ich den „Userpace“-Governor aktivieren?
- oder -
Wie kann ich die CPU-Frequenz so einstellen, dass sie immer auf dem Maximum bleibt?
Antwort1
Wenn Sie den Modus verwenden, performance
sind die CPU-Frequenzen immer so hoch wie möglich. Beachten Sie, dass der Prozessor selbst die CPU-Frequenz unter keinen oder sehr geringen Lastbedingungen reduzieren kann, unabhängig davon, was er über den Frequenztreiber tun soll. Es gibt keine aggressivere CPU-Frequenz-Last-Reaktion als performance
den Modus.
Haftungsausschluss: Die meisten meiner Erfahrungen habe ich mit dem intel_pstate-Treiber gemacht.
BEARBEITEN:
Bitte seien Sie vorsichtig, wie die gemeldeten CPU-Frequenzen interpretiert werden. Wenn Sie den acpi-cpufreq-Treiber verwenden, erhalten Sie die angeforderten CPU-Frequenzen, nicht die tatsächlichen CPU-Frequenzen. Mit dem intel_pstate-Treiber erhalten Sie die tatsächliche CPU-Frequenz, gemittelt über das letzte Abtastintervall. Meiner Meinung nach liefert der acpi-cpufreq-Treiber in diesem Bereich sehr irreführende Informationen.
Antwort2
Hier ist eine andere Methode. Wenn Sie diesen Vorschlag ausprobieren möchten, machen Sie alle Änderungen rückgängig, die durch die Einstellungen von cpufreq und intel pstate verursacht wurden. Deaktivieren Sie außerdem alle Governor-Einstellungen
Installieren Sie TLP – ein Tool, dessen Hauptzweck die Energieverwaltung ist. Es hat jedoch noch viele weitere Funktionen, z. B. die Konfiguration von CPU-Frequenzen.
sudo add-apt-repository ppa:linrunner/tlp; sudo apt-get update; sudo apt-get install tlp tlp-rdw
sudo gedit /etc/default/tlp
Finden Sie diese Zeilen
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
Ändern Sie alle Nullen in 2500000, wobei dies die Frequenz in kHz ist, die 2,5 GHz entspricht.
Speichern Sie und überwachen Sie jetzt Ihre CPU-Frequenz.
Weitere Infos und Quellen:http://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html#installation
http://linrunner.de/en/tlp/docs/tlp-configuration.html#scaling