Einstellung des CPU-Reglers auf "on demand" oder "konservativ"

32

Ich habe Probleme mit cpupowerArchLinux. Ich möchte den Gouverneur auf ondemandoder sogar auf setzen conservative.

Wenn ich das tue $ sudo cpupower frequency-info --governors, bekomme ich nur performance powersave.

Also suche ich nach verfügbaren Modulen wie diesen

ls -1 /lib/modules/`uname -r`/kernel/drivers/cpufreq/

... und ich verstehe

acpi-cpufreq.ko.gz
amd_freq_sensitivity.ko.gz
cpufreq_conservative.ko.gz
cpufreq_powersave.ko.gz
cpufreq_stats.ko.gz
cpufreq_userspace.ko.gz
p4-clockmod.ko.gz
pcc-cpufreq.ko.gz
powernow-k8.ko.gz
speedstep-lib.ko.gz

Es scheinen also zunächst keine Module für "ondemand" verfügbar zu sein. Was vermisse ich?

Dann versuche ich zumindest konservativ zu aktivieren:

$ sudo modprobe cpufreq_conservative

dann überprüfe ich, ob das Modul tatsächlich geladen ist

$ lsmod | grep cpufreq

und überprüfen Sie, ob es jetzt verfügbar ist

$ sudo cpupower frequency-info --governors

aber leider bekomme ich immer noch das selbe: performance powersavenur wenn ich versuche konservativ zu aktivieren

$ sudo cpupower frequency-set -g conservative

Es heißt, dass das Modul nicht verfügbar ist.

Im Grunde habe ich zwei Fragen:

  1. Was muss ich installieren, um ein On-Demand-Modul zu haben?
  2. Wie kann ich es aktivieren?
lviggiani
quelle
1
Hängt von Ihrer CPU ab, wird aber wahrscheinlich automatisch geladen. Siehe den Arch Wiki Eintrag .
Jasonwryan
Könnten Sie bitte die Ausgabe von sudo cpupower frequency-infozu Ihrer Frage hinzufügen? Lassen Sie das Symbol fallen --governors, um alle Details anzuzeigen.
bsd

Antworten:

36

Angenommen, Ihr Governor ist der intel_pstate (Standard für Intel Sandy Bridge- und Ivy Bridge-CPUs ab Kernel 3.9). Dieses Problem betrifft nicht Arch, sondern alle Distributionen, die den neuen Intel pstate-Treiber zur Verwaltung der CPU-Frequenz / Energieverwaltung verwenden. Arch Linux CPU Frequenzskalierung .


Theodore Ts'o schrieb seine Erklärung auf Google+ :

  • intel_pstate kann beim Booten mit dem Kernel arg deaktiviert werden intel_pstate=disable
  • Das Problem mit dem On-Demand-Regler ist, dass er die spezifischen Fähigkeiten der CPU nicht kennt
  • Das Ausführen einiger Aufgaben mit höherer Frequenz verbraucht weniger Strom als das Ausführen einer niedrigeren Frequenz, was mehr Zeit in Anspruch nimmt, z. B. für arithmetische Aufgaben, aber nicht für alle Aufgaben, z
  • Der intel_pstate-Treiber kennt die Details der Funktionsweise der CPU und leistet bessere Arbeit als die generische ACPI-Lösung
  • intel_pstate bietet nur zwei Gouverneure an powersaveund performance. Intel behauptet, dass der intel_pstate "Powersave" schneller ist als der generische ACPI-Governor mit "Performance"

Um zum ACPI-Treiber zurückzukehren, starten Sie den Kernel neu und legen Sie das Argument fest. Führen Sie intel_pstate=disable
dann aus, modprobe acpi-cpufreqund Sie sollten den On-Demand-Governor verfügbar haben.

Sie können die Änderungen dauerhaft machen, indem Sie sie bearbeiten /etc/default/grubund hinzufügen

GRUB_CMDLINE_LINUX_DEFAULT="intel_pstate=disable"

Und dann grub.cfgala aktualisierengrub-mkconfig -o /boot/grub/grub.cfg

Befolgen Sie die Anweisungen zum Laden des Arch-Kernel-Moduls und fügen Sie das acpi-cpufreqModul hinzu.

bsd
quelle
Zunächst einmal vielen Dank für die Erklärung. Es ist jetzt klar. Ich bleibe bei dem intel_pstate, der sich für mich jetzt gut anhört. Ich verwende TLP zur Steuerung des Stromsparmodus auf meinem Laptop. Ich habe es so eingestellt, dass "Powersave" im Akkubetrieb und "Leistung" in Wechselstrom verwendet wird. Haben Sie ein Problem damit, dass "Leistung" die CPU die ganze Zeit über mit maximaler Frequenz laufen lässt? (dh CPU-Überhitzung oder eine andere Situation, die zu HW-Problemen führen kann)
lviggiani
Ich finde, dass Laptops im Allgemeinen regelmäßig gereinigt und teilweise zerlegt werden müssen, um Druckluft hereinzulassen und Staub, Schmutz und Katzenhaare auszublasen. Es gibt keine Notwendigkeit für die Leistung in 100% der Zeit, nur weil man an der Macht ist, in der Regel wird ein guter ausgeglichener Plan die CPU nach Bedarf ankurbeln.
Bsd
1
Es gibt einen Unterschied zwischen dem generischen acpi governor performanceund intel_pstate performance, richtig? Letzteres ist schneller als ersteres und intel_pstate powersave?
Tsorn