Erfahrungsbericht zu powerd & cpufreq

Zappotek

certified Bitschubser
Hallo Leute,

ich verfolge schon seit langem immer wieder mal das Ziel, meinen Schleppi (Sony Vaio FX701 - staubt schon, ich weiss :rolleyes:) unter FreeBSD kühl und leise zu bekommen. Kein Problem, wie man meinen sollte, gibt es doch cpufreq und powerd. Nur hab/hatte ich damit so meine Probleme ...

Vielleicht stell ich mich einfach zu doof, powerd richtig zu konfigurieren, aber IMHO ist das Teil - um's mal vorsichtig auszudrücken - "nicht wirklich brauchbar". Zumindest schafft er es im adaptive-mode, sich über kurz oder lang im oberen CPU-Frequenzbereich festzufressen - was bei mir heisst, ich spiele MP3s (sonst nix) mit ~1200 MHz und 67°C im Schatten (dabei xmms auf Anschlag, denn sonst übertönt der Lüfter die Mucke ;)). Weitere Recherchen zum Thema ergaben immer das Gleiche und irgendwann packte mich der Rappel mir die sourcen von powerd anzugucken. Nennt mich Ästhet, aber wie findet sowas den Weg nach /usr/sbin? Der Algorithmus ist ja wohl nicht mehr als ein netter Versuch. Nunja, scheinbar gibts Maschinen auf denen dieser besser funktioniert. Wie ich selber feststellte, ist es sicher nicht einfach die optimale Strategie für's stepping zu finden aber ein bisschen Gefummel brachte die Temperatur immerhin schon mal knappe 10° runter - allerdings immer noch weit entfernt von M$-Niveau von ~51° und manchmal sogar abschaltendem Lüfter!

Irgendwann bin ich dann durch Zufall auf die Idee gekommen cpufreq zu laden. Dies wird im Netz, wenn überhaupt, meist als sinnfrei oder nicht notwendig erwähnt (dev.cpu.X.freq lässt sich ja auch ohne konfigurieren) - und genau DAS war ein weiteres Problem. Der Effekt es trotzdem zu tun, waren einige freq_levels mehr (plötzlich 29 anstatt 16) und eine rapide fallende CPU-Temperatur! *freu*. In Verbindung mit der gefummelten powerd-Version ergab dies für den oben erwähnten Test (xmms, sonst nix) 50°C und einen häufig abschaltenden Lüfter => :cool:. Daher meine Empfehlung für vergleichbare Kisten: cpufreq unbedingt laden!

@[LoN]Kamikaze:
Mittlerweilen bin ich auch auf deinen doch schon recht betagten Thread hier im Forum gestossen: http://www.bsdforen.de/showthread.php?t=12827. Hier geht's zwar mehr um Energiesparen als um CPU-Temperatur aber trotzdem würde ich gerne wissen, ob dieser Daemon Fortschritte gemacht hat und was deine Erfahrungen damit sind.

Güße,
Zappotek
 
Zuletzt bearbeitet:
Ich persönlich habe mich schon lange nicht mehr mit cpufreq und powerd beschäftigt, trotzdem sollten meine Aussagen korrekt sein:

powerd
=======
powerd ist, wie sein Vorgänger estctrl auch, nur ein Dienst der im Hintergrund läuft und je nach CPU-Last die CPU-Frequenz über dev.cpuX.freq steuert.

cpufreq
=======
Cpufreq ist das Kernelmodul zur Steuerung der CPU-Frequenz. Sein Vorgänger hiess est und konnte nur die CPU-Frequenz von gewissen Intel-Prozessoren über Enhanced Speedstep steuern. Cpufreq steuert die CPU-Frequenz auf die Vorgabe dev.cpuX.freq.

Schnittstelle zwischen cpufreq und powerd
=============================
Wichtig: Solange das Kernelmodul cpufreq nicht geladen ist, ist dev.cpuX.freq nur ein Platzhalter. Ohne geladenem cpufreq-Kernelmodul schraubt powerd an Dummy-Werten für die CPU-Frequenz herum!

Das Kernelmodul cpufreq wird mit:

Code:
# kldload cpufreq

geladen. Ob das Kernelmodul cpufreq geladen wurde, kann mit:

Code:
# kldstat

kontrolliert werden. Wenn Du's mir nicht glaubst, teste mal mit ubench:
http://www.freshports.org/benchmarks/ubench/

Literatur
=======
Bitte beachte die entsprechenden BSDForen-Wikiartikeln:

http://wiki.bsdforen.de/index.php/CPU_Stepping_(cpufreq,_powerd)
http://wiki.bsdforen.de/index.php/FreeBSD_-_Pentium_M
 
Zuletzt bearbeitet:
@Zappotek
Mir hing C zum Hals raus, deshalb habe ich das ganze abgeblasen. Im Grunde genommen macht powerd ja ganz akzeptable Arbeit.
 
Fuer den powerd gibt es von Poul-Henning Kamp einen Patch, der einen anderen Algorithmus bietet. Ich habe ihn auf meinem alten Notebook zu meiner Zufriedenheit benutzt. Bei meinem neuen noch nicht, weil es mir gerade erst durch diesen Thread wieder in den Sinn gekommen ist.
Da ich mit dem hauseigenen adaptiven Algorithmus vom powerd im Gegensatz zu dem, der unter Windows eingesetzt wird, nicht zufrieden bin, werde ich phks Patch auch wieder einsetzen.

Zu finden ist er hier:
http://phk.freebsd.dk/patch/powerd.patch
 
Hallo Leute,
danke schon mal für eure Antworten.

@Andreas: Sorry, aber ich versteh deine Antwort z.T. nicht ganz ;'(
Schnittstelle zwischen cpufreq und powerd
=============================
Wichtig: Solange das Kernelmodul cpufreq nicht geladen ist, ist dev.cpuX.freq nur ein Platzhalter. Ohne geladenem cpufreq-Kernelmodul schraubt powerd an Dummy-Werten für die CPU-Frequenz herum!
... und das heisst? Etwa, dass ein powerd ohne geladenem cpufreq ins Leere greift und keinen Effekt hat? Nicht wirklich, oder? Auch bei nicht geladenem cpufreq zeigt bei mir ein
Code:
sysctl dev.cpu.0.freq=37
ganz klar Wirkung - und da brauch ich keinen ubench dazu!

Das Kernelmodul cpufreq wird mit:

Code:
# kldload cpufreq

geladen. Ob das Kernelmodul cpufreq geladen wurde, kann mit:

Code:
# kldstat

kontrolliert werden. Wenn Du's mir nicht glaubst, teste mal mit ubench:
http://www.freshports.org/benchmarks/ubench/
hmm - und was daran sollt ich jetzt nicht glauben wollen? Und inwiefern sollte mich da ubench (wovon?) überzeugen?

Die hatte ich bereits gelesen. Und leider gehören auch diese Artikel (zumindest der erste) zu den eingangs besagten. Zitat: "Bei einigen Rechnern scheint es nötig zu sein das cpufreq Modul zu laden. Bei anderen funktioniert es einfach so, obwohl es nicht einmal von kldstat gelistet wird." - hmm, genau das meinte ich. Solche Bemerkungen drängen nicht wirklich dazu cpufreq ne Chance zu geben. Wie auch immer, in meinem Fall scheint's genau richtig zu sein und das wollt ich loswerden! :)

@[LoN]Kamikaze:
Schade - hätt mich interessiert wie du den einen oder anderen Punkt anpacken wolltest, aber ok ... und das mit powerd - nunja, vielleicht Geschmackssache aber ohne patch (thx @ laemodost) kommt mir der nicht mehr in die rc.conf ;)

Grüße,
Zappotek
 
Hallo Leute,

ich verfolge schon seit langem immer wieder mal das Ziel, meinen Schleppi (Sony Vaio FX701 - staubt schon, ich weiss :rolleyes:) unter FreeBSD kühl und leise zu bekommen. Kein Problem, wie man meinen sollte, gibt es doch cpufreq und powerd. Nur hab/hatte ich damit so meine Probleme ...
....
Güße,
Zappotek
Also ich kann dazu nur sagen, das mein Laptop unter FreeBSD 4.x mit Akku nur 45 Min. durch hielt. Als dann FreeBSD 5.0 raus kam hab ich nach einem "make world" plützlich 80-90 Min. gehabt und das auch noch schnurrie leise (Lüfter schaltete auch immer ab) und alles mit GENERIC-Kernel also ohne Wudu.
Nach FreeBSD 5.4 kam NetBSD 3.0 BETA drau, das ebenfalls die Werte von FreeBSD 5.x erreichte ohne Wudu. Jetzt ist Archlinux drauf, da musste ich das Freq.-Teil erst einrichten (Fedora hat das auch, wie die BSDs, per default drin gehabt).

Lange Rede kurzer Sinn, ab FreeBSD 5.0 / NetBSD 3.0 sollte man keine Probleme haben, soweit meine Erfahrungen.... :D
 
kann FreeBSD auch den AMD-Geode runter takten?

Ich habe mal eine Frage zum Thema, allerdings in einem anderen Kontext.

Es gibt da soeinen Prozessor für Embeded-Systeme, der Sockel-A-kompatiebel ist. Auf eBay werden diese Teile sehr günstig vertickt: http://computer.search.ebay.de/geode_Computer
Leider wird er von den normalen Betriebssystemen nicht unterstützt, da sie keine Speed-Tabelle für ihn haben.
Das 1,4-GHz-Teil (Modell 1750) soll man so auf 9 Watt runter bekommen.

Für Linux hat da einer einen Patch geschrieben.

Meine Frage, weiß einer ob das auch mit FreeBSD geht oder hat jemand vielleicht soein Teil und kann von seinen Erfahrungen berichten?
 
Bei Geode weiss ich es nicht. Aber ich habe eine VIA CPU mit 533 MHz, die sich mit powerd/cpufreqd auf 266 MHz runtertakten laesst.
 
Danke!

Bei Geode weiss ich es nicht. Aber ich habe eine VIA CPU mit 533 MHz, die sich mit powerd/cpufreqd auf 266 MHz runtertakten laesst.
Mmmh ist VIA denn genauso schnell wie die AMD? Ich glaube nicht, aber wichtig ist ja in diesem Fall das Leistungs-/Stromverbrauchs-Verhältnis.
Das wird sicherlich bei einer regelbaren CPU besser sein als bei einer Stromspar-CPU, die man nicht regeln kann... :D

Das ist also eine gute Idee von Dir, ich werd mir mal den VIA-Kram näher ansehen. :)
Hoffentlich ist das Teil nicht so teuer wie die anderen regulären regelbaren Teile... :confused:
 
Zurück
Oben