Speedstep funktioniert, Lüfter läuft dennoch voll

Herakles

Profifragensteller
Moin!

Ich habe mit powerd meine CPU-Taktung dynamisch eingestellt, sehe auch mit gkrellm2 wunderbar wieviel grade getaktet ist. Das switcht wunderbar zwischen 200 und 1600 MHz hin und her.

Allerdings bin ich es von meiner vorherigen Installation gewohnt, dass der Lüfter bei so niedriger Last auch mal weniger dreht oder gar aus geht. Hab ich irgendwas vergessen, zu installieren?

Nutze seit 2 Tagen FBSD 6.0


Herakles
 
? Nein. Ehm, hab ich da was mißverstanden? Ich denk, powerd nimmt einem die Arbeit, die man eigentlich von Hand mit cpufreq machen kann, einfach nur ab. Was soll ich da noch mit cpufreq handhaben?

???? totale Verwirrung in meinem Hirn....
 
Also ich weiss es auch nicht genau. Aber bei mir rennt nach kldstat erst mal kein cpufreq, sonder ich muß das laden als Kernelmodul. Ob das nöttig ist, weiss ich ehrlich gesagt nicht und es hat bei mir auch keinen Unterschied gemacht. Zumindest habe ich dazu nie eine vollständige Aussage auf der Mailingliste gesehen bzw. etwas im Handbuch gesehen.

I.MC
 
Siehste, da steht auch nirgends, ob cpufreq nun geladen werden muß oder nicht. IMHO ist es nämlich genau das, was die Speedstep-Geschichte regelt. Powerd etc sprechen dessen Schnittstelle nur an.

I.MC
 
Bei mir ist die Schnittstelle da, obwohl cpufreq nicht von kldstat gelistet wird. Und sie funktioniert auch, das merkt man sofort wenn man die CPU auf 75MHz drosselt.
 
Also, so wie ich das sehe, reicht es VOLLKOMMEN aus, powerd zu konfigurieren. Daß vorhin noch mein Lüfter rannte wie irre lag wohl eher daran, dass es hier im Raum zu warm war. Jetzt steht derOnkel nämlich still. Und dass die CPU-Frequenz geregelt wird, konnte ich ja bereits zuvor sehr komfortable beim gkrellm beobachten.


Herakles
 
Wie geht das eigentlich bei gkrellmn? Braucht man dafür ein plugin? Ich hätte sowieso gerne, das er mir einfach sysctl Variablen ausgibt.
 
Ich weiss nicht ob Dein Problem noch aktuell ist, aber cpufreq(4) integriert die "alten" SpeedStep (oder wie auch immer der Name bei andern Herstellern) Treiber wie z.B. est(4), p4tcc(4) etc. in ein API. Keine Ahnung ob cpufreq(4) nun integraler Bestandteil des Kernels ist oder nicht, jedenfalls benutzt es sogenannte "absolute" und "relative" Treiber. Absolute Treiber sind solche die die Frequenz der CPU ändern, es kann immer nur ein absoluter Treiber aktiv sein. Relative Treiber arbeiten zusätzlich in dem sie z.B. HLT-Instruktionen ausführen. Es können mehrere relative Treiber aktiv sein, auch während ein absoluter Treiber benutzt wird.

Nate Lawson, der Autor, findet relative Treiber gut, ich bin da anderer Meinung. cpufreq(4) erkennt z.B. bei meinem Pentium-M mit 1,5 GHz 1500, 1200, 1000, 800 und 600 MHz als absolute Frequenzen. Zusätzlich kommen über p4tcc(4) 1/1, 1/2, 1/4 und 1/8 als Multiplikatoren hinzu. Die verfügbaren Frequenzen werden errechnet durch den Multiplikator mal die absulute Frequenz. So gibt es auf meinem Laptop z.B. ein 1/2*1500MHz = 750 MHz und ein 1/1*800 MHz. Natürlich braucht die CPU mit 800 MHz weniger Strom als mit 1500 MHz (auch wenn sie jede zweite Einheit ein HLT ausführt). Wegen der relativ einfachen Algorithmen zur Frequenzanpassung in powerd(8) springt die Frequenz recht oft zu hohen absoluten Frequenzen.

Ich habe deshalb alle relativen Treiber per /boot/loader.conf deaktiviert, das geht z.B. für acpi_perf als

# echo 'hint.acpi_perf.disabled="1"' >> /boot/loader.conf

Seitdem ist mein Lüfter wieder still.

Und ob cpufreq(4) nun explizit geladen oder statisch in der Kernel einkompiliert werden muss werd' ich noch rausfinden.

In Zukunft wäre bei solchen Problemen ein dmesg angebracht.
 
was hast du fuer nen rechner?
eventuell ist der luefter einfach nur vollgestaubt...
oder hast du deinen rechner in der sauna aufgebaut?
 
@Vincent Vega
Das Problem ist längst gelöst. Und ein dmesg sagt bei diesem Problem eigentlich nichts aus.
 
Back
Top