cpufreq mit XP-M auf Desktopsystem

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

cpufreq mit XP-M auf Desktopsystem

Beitrag von deBeck » 26.05.2005 10:01:37

Hallo,

Mein Desktopsystem besitzt einen Athlon XP-M, dessen Takt unter Windows dynamisch vom Tool RM-Clock in mehreren Stufen zwischen 600MHz und 2.3GHz geregelt wird, wodurch die Abwärme der CPU beim normalen Arbeiten extrem reduziert wird. Mit Linux bekomme ich es aber nicht hin. Obwohl ich alle nötigen Einsellungen im Kernel vorgenommen habe bekomme ich die Governors nicht angezeigt :?:

Kann natürlich sein, dass das BIOS nichts von PowerNow weis und cpufreq deshalb nicht laufen will. Windows möchte das nativ ja auch nicht, muß es erst mit dem Userspace-Tool RM-Clock dazu überreden. Der Chipsatz ist ein VIA KT600 auf einem AsRock K7VT6.

Hat mir jemand einen Tip ?

Benutzeravatar
MartinL25
Beiträge: 437
Registriert: 17.04.2005 15:29:09

Beitrag von MartinL25 » 26.05.2005 16:51:11

Natürlich muß erstmal der Kernel Deine Hardware unterstützen, würde mich aber überraschen wenn nicht.

Benutzt Du einen selbstgebackenen Kernel oder nicht? Falls Du einen Standard-Debian 2.6.8er verwendest, muß Du noch die entsprechenden Kernelmodule laden (z.B in "/etc/modules" eintragen). Das sind wahrscheinlich cpufreq_userspace, cpufreq_powersave und powernow-k7. Ob's klappt siehst Du daran, daß das Verzeichnis "/sys/devices/system/cpu/cpu0/cpufreq/" exisitiert und nicht leer ist. Dann kannst Du einfach das Paket powernowd installieren und der rest geht dann automatisch. Falls Du einen selbstgebackenen aktuellen Kernel (ab 2.6.10 glaube ich) hast, kannst Du auch das Modul cpufreq_ondemand laden und mit

Code: Alles auswählen

echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"
(am besten in einem Startupskript) aktivieren, dann kannst Du Dir das Paket powernowd sparen weil die beiden Sachen so ziemlich dasgleiche tun.

Beide Methoden klappen bei mir auf einem Laptop mit einem Duron.

Gruß Martin

P.S. Unabhänging davon solltest Du bei solchen oder ähnlichen Hardwareproblemen immer Deinen verwendeten Kernel mit angeben! :wink:

Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

Beitrag von deBeck » 26.05.2005 21:07:50

Hoi,

Das ist ja das Problem - die CPU kann PowerNow, aber kein Sockel-A Desktopboard, weil es ja kein offizielles Feature ist. Sonst würde Windows ja auch einfach PowerNow nutzen, tut es aber nicht, ein Userspace-Tool muß das offensichtlich richten - aber das gibt es für Linux AFAIK nicht. cpufreq lässt sich in Folge dessen nicht laden, daher auch keine Taktänderung - egal ob mit ondemand oder den vorhandenen Userspace-Sachen.

Klar hab ich den Kernel angepasst - 2.6.11-cko5 momentan. Von den Powermanagement-Features her hat sich abgesehen von "ondemand" seit 2.6.9 ja nix mehr wesentlich verändert.

Gruß

Benutzeravatar
MartinL25
Beiträge: 437
Registriert: 17.04.2005 15:29:09

Beitrag von MartinL25 » 27.05.2005 17:52:15

Hei,

ob die Regelung der CPU-Frequenz unter Windows ein Userspace-Programm regelt oder Windows einen Extra-Treiber braucht oder nicht, das ist Linux erstmal egal. Für Cool'n Quiet von nem Athlon64 brauchst Du unter Windows auch einen Extra-Treiber, unter Linux ist der im Kernel. Wenn es unter Linux funktioniert, dann nur weil die entsprechenden Treiber in den oben genannten Kernel-Modulen enthalten sind.

Welche Fehlermeldungen bringt er denn, wenn Du versuchst, die entsprechenden Module zu laden?

Gruß Martin

Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

Beitrag von deBeck » 27.05.2005 21:01:37

Hoi,

Code: Alles auswählen

sudo modprobe acpi-cpufreq
FATAL: Error inserting acpi_cpufreq (/lib/modules/2.6.11-cko5-0527/kernel/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko): No such device
Was du sagst stimmt solange die Hardware so ist wie es die Treiber und Module erwarten. Bei meinem System ist das natürlich nicht so, ist ja ein Desktop-System mit PowerNow-fähiger CPU aber keinem dafür geeigneten BIOS. Für den P4 bietet Linux ja z.B. ein Modul was die Taktänderung über den Umweg über dessen thermische Schutzschaltung regelt. Für meine Hardware-Konstellation gibts leider nichts derartiges.
Deshalb greift das beschriebene Windows-Programm auch direkt auf die Register des Mainbaords zu, um so doch noch den Takt der CPU ändern zu können.
So sollte es sogar möglich sein die Spannung der CPU zu ändern - aber leider sind in dem Fall die nötigen Pins nicht bestückt :-(


Gruß
deBeck

Benutzeravatar
MartinL25
Beiträge: 437
Registriert: 17.04.2005 15:29:09

Beitrag von MartinL25 » 28.05.2005 11:02:42

hmm, hast Du mal probiert die Module cpufreq und powernow-k7 (vielleicht powernow-k8, weiß nicht ob xp-m 7. oder 8. Generation powernow ist) zu laden? Ich meine nicht acpi-cpufreq, wenn ich die Dokumentation richtig verstehe, ist das nur so eine Art fallback, zumindest für k7.

Gruß Martin

Benutzeravatar
Teddybear
Beiträge: 3163
Registriert: 07.05.2005 13:52:55
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Altomünster
Kontaktdaten:

Beitrag von Teddybear » 28.05.2005 11:09:08

Hi

ist das hier ein Forum von Linux oder Windows usern?? :-)

Das Board sollte eigendlich mit PowerNOW klar kommen... und kein hindernis darstellen...
(unter Windoof XP kappt PowerNOW in der regel ohne Zusatztools gab auch mal nen K7 Treiber auf AMD.com ist aber auf der AMD seite nicht mehr verfügbar, damit klappte das 1a :) .. unter 98 -2000 gibts ne Software zur PowerNOW steuerung) soviel mal offtopic.

und was unter Windoof klappt muss auch unter Linux klappen...

ich denke mal das bekommst de noch hin..

ein Link der vieleicht nützlich sein könnte:
http://www.nervous.it/hw/linux_aspire13 ... l#PowerNow


greez Teddybear

Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

Beitrag von deBeck » 28.05.2005 14:01:59

Nene, erstmal muß cpufreq geladen sein, dann powernow_k7 - aber ohne das eine motzt auch das andere, natürlich schon probiert ich dies habe.

Der Spruch "was unter Windows klappt..." ist leider etwas fern der Realität. Diese gesuchte Funktion ist für Linux einfach nicht implementiert, so ist das einfach. Um es nochmal zu sagen : PowerNow funktioniert unter Windows wie Linux wunderbar, wenn die Hardware es korrekt unterstützt - also bei Notebooks. Aber auf einem Desktopsystem mit XP-M ist das eben was anderes.
Wer genauer nachlesen will, was man unter Linux implementieren müsste, damit _jedes_ Desktop-Board den XP-M nutzen kann, möge sich die Quellen zu RM-Clock ansehen :
http://www.rightmark.org/
Kann ja sein das irgendwo im Netz ein Patch dazu rumgeistert, gefunden ich ihn noch nicht habe :roll:

Auszug zum Thema aus der Anleitung von holarse.de :
Bei vielen Desktop-Mainboards kriegt man beim Laden des Treibermoduls für die CPU Fehlermeldungen wie "no such device". Das bedeutet, dass das Mainboard die Funktionen zum CPU Frequency Scaling auf die "konventionelle" Art nicht unterstützt. Wenn man einen geeigneten Chipsatz hat, kann man sich über diesen doch noch Zugang zum Frequency Scaling ermöglichen.
Beispiel nVidia nForce2: Anstatt das "powernow-k7" Modul zu benutzen, greift man hier zum Modul "cpufreq-nforce2". Dieses Modul kann zwar nichts am FID (Multiplikator) ändern, aber den FSB beeinflussen.
Die Funktionsweise im Zusammenhang mit Daemons ist dann die selbe wie mit den anderen Treibern auch.
Wenn man keinen Chipsatz hat, der in der Kernelkonfiguration aufgelistet ist, hilft einem evtl noch eine Suche bei Google .
Aber es gibt halt kein solches Modul für VIA-Chipsätze.

OT: Wenn man Windows für bestimmte Dinge braucht muß man es halt benutzen - ich habe da kein Problem mit.

Gruß
deBeck[/quote]

Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

Beitrag von deBeck » 28.05.2005 14:21:32

Um noch zu erklären warum ich so scharf auf PowerNow wäre :

Ich kriege den Athlon auch so mittles des Debian-Paketes "athcool" kühler bzw spare Strom, bei Idle wird die CPU quasi vom BUS entkoppelt und benötigt unter 5W. Das wäre eingeltich ja schon gut genug - nur hat diese Methode auf der AMD-Plattform den Nachteil, daß manch andere Komponente damit nicht gut klarkommt. Auszug aus dem man von athcool :
Depending on your motherboard and/or hardware components, enabling power-saving mode may cause:

* noisy or distorted sound playback,
* a slowdown in disk performance,
* system freezes or instability,
* massive corruption of the filesystem (rare, but observed at least once).
Bei mir ist das Problem nun, daß GBit-LAN-Karten auf wenige MBit/s einbrechen, wenn athcool aktiv ist. Es ist dabei egal. ob es eine billige Realtek oder eine Intel-Karte ist, ob der Treiber mit NAPI läuft oder ob es ein VIA KT266A oder ein VIA KT600-Chipsatz ist, das Problem bleibt.
Da ich dies auf meinem Fileserver einsetze, ist das sehr unschön. Unter Windows ist der Effekt der selbe (wenn auch nicht ganz so schlimm), wenn ich ein zu athcool von der Funktion her identisches Tool benutze oder im BIOS (manche Boards unterstützen das) direkt die "HALT Command Detection" aktiviere.

Bisher behelfe ich mir so, daß immer wenn jemand auf Samba verbindet, athcool deaktiviert wird. Das funktioniert, ist aber sehr unschön.

Die andere Variante wäre nun den Takt dynamisch zu senken. Bei 600MHz benötigt der Athlon nur minimal mehr Leistung als im HALT-Zustand. Unter Windows ist dies nun mit dem erwähnten RM-Clock zu realisieren, die Transferraten bleiben unbeeindruckt. Unter Linux mangels passenden Modules für Chipsätze ausser des nForce eben leider nicht. Aber vieleicht fällt mir ja mal ein gebrauchtes nForce in die Hände ;-)

Gruß
deBeck

init 0
Beiträge: 673
Registriert: 21.10.2003 19:40:28

Beitrag von init 0 » 28.05.2005 14:42:48

Hi,

ich habe eine kurze Zeit das cpufreq-nforce2 benutzt. Leider blieb aber immer wieder der Nvidia Treiber stehen. Der Rechner war über Netz erreichbar aber der Xserver war tot. Ausserdem wars bei mir nicht möglich die FSB unter 150 zu setzen weil das Board dabei sofort stehenblieb. Insgesamt also nicht wirklich eine Freude.

Benutzeravatar
deBeck
Beiträge: 616
Registriert: 23.09.2004 20:52:27
Wohnort: Süd-Schwarzwald

Beitrag von deBeck » 28.05.2005 15:09:44

Du meinst 150 "DDR", also 75MHz real ?
Den FSB kann man auch ruhig oben lassen - das er bei zu niedrigem FSB motzt kann man nicht ankreiden finde ich. Ich glaube ich las auch mal, daß viele XP-M einen Takt unter 800MHz gar nicht mögen und gerne mal einschlafen. Bei mir funktionieren die 600MHz auf VIA KT600 unter Windows wunderbar. Dumm das ich lange eine arge nForce-Abneigung hatte (Probleme mit PCI-Bus....), sonst könnte ich das jetzt ausprobieren .

Gruß

Antworten