Dieser Artikel wurde archiviert, da er - oder Teile daraus - nur noch unter einer älteren Ubuntu-Version nutzbar ist. Diese Anleitung wird vom Wiki-Team weder auf Richtigkeit überprüft noch anderweitig gepflegt. Zusätzlich wurde der Artikel für weitere Änderungen gesperrt.
Anmerkung: Je nach Prozessortyp stehen gegebenenfalls nicht alle in diesem Artikel beschriebenen Abfrage- und Einstellmöglichkeiten zur Verfügung. Ab Ubuntu 11.04 ist das Programm nicht mehr in den offiziellen Paketquellen enthalten.
Der Dienst powernowd dient zur Steuerung des Prozessor-Taktes bei CPUs mit AMDs PowerNow!- bzw. Cool'n'Quiet-Technologie und Intels Speedstep-Technologie sowie auch für Intel Pentium 4 Prozessoren.
Im Gegensatz zu den Kernel-eigenen Werkzeugen läuft powernowd im Userspace und bietet andere (in Teilen mehr) Einstellmöglichkeiten. Diese sind zwar nicht so detailliert wie bei cpufreqd, aber für den Alltagsgebrauch mehr als ausreichend.
Geschwindigkeitssteigerungen lassen sich durch Ändern der Einstellungen nicht erreichen, da der Takt nicht über den Standard-Wert erhöht werden kann. Vielmehr ist es mit dem powernowd möglich, die optimale Mischung aus Verarbeitungsgeschwindigkeit und minimaler Prozessorverlustleistung (=> weniger Abwärme, maximale Batterielaufzeit bei Laptops) einzustellen.
Powernowd befindet sich in den Paketquellen
powernowd (universe)
mit apturl
Paketliste zum Kopieren:
sudo apt-get install powernowd
sudo aptitude install powernowd
In der Vergangenheit wurde es bereits mit der Grundinstallation installiert und automatisch gestartet, was aber spätestens seit Ubuntu 10.04 nicht mehr der Fall ist.
powernowd funktioniert nur, wenn ein entsprechendes Speedstepping-Kernelmodul für den Prozessor geladen ist. Details hierzu findet man bei Prozessortaktung.
Der Dienst lässt sich in vier verschiedenen Modi starten, die mit dem Parameter -m
ausgewählt werden. Hier eine Beschreibung der Modi:
In diesem Modus wird die CPU-Frequenz, sobald die CPU-Last einen Wert über 80% erreicht, in Schritten von 100 Mhz erhöht, bzw., wenn die CPU-Last unter 20% fällt, in 100-Mhz-Schritten gesenkt.
Vorteil: gleichmäßiges Takten
Nachteil: Erreichen der max. bzw. min. Frequenz dauert ein wenig
Dieser Modus taktet die CPU sofort auf die maximale Frequenz, sobald eine CPU-Last über 80% erreicht wird. Sinkt die CPU-Last unter 20%, wird der Takt in 100-Mhz-Schritten wieder gesenkt.
Vorteil: Benötigt ein Prozess viel Rechenleistung, kann ihm diese durch das sprunghafte Hochtakten schnell zur Verfügung gestellt werden.
Nachteil: Benötigt ein Prozess nur kurze Zeit Rechenleistung, so wird unnötig auf die max. Frequenz getaktet und das Heruntertakten auf die stromsparende Minimal-Frequenz dauert relativ lange.
Die CPU wird in diesem Modus sofort auf die minimal mögliche Frequenz getaktet, falls die CPU-Last unter 20% sinkt. Erreicht die CPU-Last allerdings 80%, wird langsam in 100-Mhz-Schritten die Frequenz erhöht.
Vorteil: Sobald keine hohe Rechenleistung mehr benötigt wird, wird auf die stromsparende Minimal-Frequenz getaktet.
Nachteil: Sollte ein Prozess eine hohe Rechenleistung erfordern, wird diese erst nach einiger Zeit erreicht aufgrund des nur schrittweisen Hochtaktens.
Dieser Modus sorgt dafür, dass sofort auf die max. Frequenz getaktet wird, falls die CPU-Last den Schwellenwert 80% erreicht, bzw. dass sofort auf die minimale Frequenz getaktet wird, falls der Schwellenwert 20% unterschritten wird.
Vorteil: schnelle Taktanpassung
Nachteil: keine Zwischenschritte
Die Schwellenwerte für die CPU-Last, bzw. die Schrittweite für die Taktanpassung lassen sich über Parameter an die eigenen Bedürfnisse anpassen.
-u <Wert>
verändert den oberen Schwellenwert, der per default auf 80 (%) gesetzt ist. Mögliche Werte sind Zahlen von 0 bis 100. Jedoch Vorsicht: Gibt man 100
an, so kann der Schwellenwert nicht mehr überschritten werden, also findet kein Hochtakten mehr statt.
-l <Wert>
legt den unteren Schwellenwert fest. Der Standardwert ist hier 20 (%). Der mögliche Wertebereich liegt hier bei 0 bis 100. Achtung: Gibt man 0
an, so kann dieser Wert nicht mehr unterschritten werden und es wird nicht mehr heruntergetaktet.
-s <Wert>
bestimmt die Schrittweite des Taktens. Standardmäßig ist dieser Wert bei 100.000 (Khz), also umgerechnet 100 Mhz.
Um vorab die richtigen Einstellungen für die Parameter zu ermitteln, empfiehlt es sich, diese vorerst per Hand zu setzen. Als erstes sollte man die aktuelle Instanz von powernowd beenden, indem man in einem Terminal [1] folgendes eingibt:
sudo /etc/init.d/powernowd stop
Nun kann man powernowd von Hand starten. Zum Beispiel mit
sudo powernowd -m 2 -l 50 -u 90 -s 50000 -v
Der Parameter -v
steht hier für verbose, was bedeutet, dass die Settings, die man spezifiziert hat, noch einmal zur Kontrolle ausgegeben werden:
powernowd: Settings: powernowd: verbosity: 1 powernowd: mode: 2 (PASSIVE) powernowd: step: 50 MHz (50000 kHz) powernowd: lowwater: 50 % powernowd: highwater: 90 % powernowd: poll interval: 1000 ms powernowd: Found 1 cpu: powernowd: cpu0: 600Mhz - 1600Mhz
In diesem Fall hat man also nun powernowd im PASSIV-Modus gestartet. Die Taktschrittweite beträgt 50 Mhz und die Schwellenwerte liegen bei 50% für die untere, bzw. 90% für die obere Schwelle. Das GNOME-Applet "Überwachung der Prozessortaktstufen" eignet sich sehr gut, um im Panel zu sehen, wie powernowd den Prozessor taktet. Alternativ kann man auch in einem Terminal [1] den Befehl watch nutzen:
sudo watch -n 1 cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
eingeben. Der Parameter -n 1
für watch stellt das Aktualisierungsintervall ein. In diesem Fall wird jede Sekunde aktualisiert.
Man kann nun etwas herumexperimentieren, welche Einstellungen einem am Besten passen. Man sollte aber immer sicherstellen, dass die aktuelle Instanz von powernowd beendet ist, bevor man einen erneuten Versuch mit anderen Werten startet, da mehrere Instanzen sich gegenseitig behindern.
Damit powernowd die im obigen Abschnitt ertesteten Parameterwerte auch beim Systemstart anwendet, muss man im Verzeichnis /etc/default/ eine Datei namens powernowd erstellen (Editor mit Root-Rechten, [2]): Dem obigen Beispiel entsprechend muss man in diese Datei nun folgende Zeile hinzufügen:
OPTIONS="-q -m 2 -l 50 -u 90 -s 50000"
Das -q
steht für "quiet", also keine Ausgabe außer im Fehlerfall.
Zu beachten ist jedoch, dass man unter GNOME dem gnome-power-manager zuvor die Konfiguration von powernowd aus der Hand nehmen muss, da das Applet sonst die Werte mit seinen eigenen überschreibt. Dies macht man mit dem GNOME Konfigurationseditor. Dort wird bei folgenden Schlüsseln der vorhandene Wert durch nothing ersetzt:
"apps -> gnome-power-manager -> cpufreq -> policy_ac"
bzw.
"apps -> gnome-power-manager -> cpufreq -> policy_battery"
Alternativ kann man das Taktverhalten des Prozessors auch über die Laptop Mode Utilities beinflussen. Oder man wählt einen der Kernel-eigenen Governor. Details dazu findet man im Artikel Prozessortaktung.
Diese Revision wurde am 3. März 2015 15:34 von aasche erstellt.