DELL Inspiron 3800, BIOS A17 und Inspiron 4000, BIOS (mitlerweile) A23 Kernel 2.6.8-24-default bzw. 2.6.4-52-default powersave-0.9.19-2 bzw. -0.7-7 SuSE 9.2 bzw. 9.1 natürlich ACPI nahezu identische CPU Intel P III, Coppermine 500MHz / 600MHz SpeedStep, kein Throttling
Unter Win98 (APM) und Win2k (ACPI) mit mitgelieferter Software "Intel SpeedStep" lässt sich die CPU auf 500 bzw 600 MHz einstellen.
Linux:
SpeedStepping funktioniert NICHT. ok, überholt.
Das BIOS scheint die Frequenz nicht zu ändern. falsch.
Ich habe unter 9.1 und 9.2 john laufen lassen "john the ripper". Bei beiden Konfigurationen ändert sich beim Wechsel Akku/Netz oder bei "powersave -f bzw -l" /proc/cpuinfo, aber nicht die performance von john :-( und im log steht "cpufreq: change failed with new_state X and result 0", wobei X abwechselnd 0 und 1 ist.
Was fuer eine CPU? Intel P III, Coppermine 500MHz / 600MHz SpeedStep
cat /proc/cpuinfo, vielleicht findest Du auch irgendeine Spec/Handbuch in der steht, was die CPU für Frequenzen/Volt Paare können sollte. Stimmt das mit /sys/devices/system/cpu/cpufreq/* überein? nicht weiter verfolgt...
Neuere Kernels haben ein debugging feature, das in Deinem Fall ideal wäre, da hat sich eh einiges getan, vielleicht geht's einfach mit n'em neuen Kernel. Kriegst Du's hin einen neuen Kernel Of The Day von ftp://ftp.suse.com/pub/people/mantel/kotd/i386/HEAD/ zu installieren (vorsicht, nicht den alten überschreiben)? hm, ich bin hier am Ende der Welt, fürn Kernel-Download müsste ich mal ein Internetcafe aufsuchen. Wenn ich jetzt nicht weiterkomme... Installieren is kein Problem, zu Hause hab ich auf anderen Maschinen auch schon diverse Kernel gebacken.
Hmm, nachdem die Kiste aber älter ist, sollte cpufreq eigentlich keine Probleme machen (allerhöchsten PIII Coppermine?). Die Fehlermeldung schaut ein bisschen nach BIOS bug aus, muss aber nicht sein... Das BIOS ist das letzte zu bekommende, frisch von DELL mit nem neuen Akku geliefert. Und das Problem ist auf beiden Maschinen das selbe.
Das liegt definitiv am Kernel, nicht am powersaved. Wenn Du kein C3 hast sagt Dir vielleicht powersave -r die richtige Frequenz. C3? 19.9 - 115.6 MHz. Ich habe im BIOS gefunden, dass es einen "Smart-CPU-Mode" gibt, der Throttling per BIOS macht. Frage mich aber, was dann SpeedStep da noch zu suchen hat. Oder lege ich damit nur die Obergrenze fest? - Scheint so. Also gut. Wenn ich die CPU mit john beschäftige bekomme ich 500 MHz bei powersave -l und 600 MHz bei powersave -f von powersave -r geliefert. Damit bin ich zufrieden :-)
Mein dummer john-test war scheinbar das falsche Mittel. Ich habe diese powersave-r-Werte jetzt mit einem john -test bestätigen können. Das gilt direkt für beide Maschinen...
Welches cpufreq Modul ist bei Dir geladen? speedstep-smi
Wenn Du momentan ein speedstep-xxx Module benutzt hilft Dir vielleicht das acpi Modul oder andersrum. Ohne speedstep-smi bekomme ich SpeedStep gar nicht zum Laufen. Ich kann dann mit powersave -r die vom BIOS geänderte CPU-Freq feststellen, aber die geht dann immer bis 600MHz hoch. Wenn ich speedstep-smi lade, tauchen die Fehlermeldungen auf, aber es funktioniert scheinbar trotzdem. Irgendwie hatte ich es einmal geschafft, dass die CPU bei hohen Werten, also 500/600MHz blieb, und nicht runtergetaktet wurde, aber evtl. hatte ich da john laufen und wusste es nicht. Im BIOS gibt es diese "Smart CPU Mode" Einstellung an/aus, laut BIOS gilt die sowohl für APM als auch für ACPI. Ich habe festgestellt, dass sie bei Linux für ACPI nicht gilt. Wenn powersaved und die Module nicht geladen sind, läuft die CPU auf vollen "Umdrehungen", egal, was im BIOS steht. Oder ich bekomme das zumindest von powersaved -r so angezeigt. Wenn ich von Hand "processor" lade gehts wieder. Wenn der powersaved läuft, wird die CPU-Frequenz dynamisch angepasst (laut powersaved -r), aber beeinflussen kann ich das nicht. Dazu evtl. noch nen Tip?
Danke Markus