Mit einem Athlon 64 unter Sarge Strom sparen
Aus BraLUG-Wiki
Alpha Version ist in Entwicklung;-)
Ich habe mich nun endlich durchgerungen und mir einen AMD Athlon 64 mit Venice Kern und Sockel 939 zugelegt. Natürlich brauchte ich noch ein neues Mainboard. Dieses ist ein Epox EP-9NDA3J auf der Basis des Nvidia Nforce 3 Ultra Chipsatzes. Da ich wie fast immer sparsam bin, kaufte ich nur das Board, den Prozessor und einen leisen Lüfter. 512MB DDR-(Ossi-)RAM, eine 120er IDE Platte, eine AGP Matrox G450 Grafikkarte einen DVD-Brenner und ein DVD Lauferk hatte ich noch. Wichtig fand ich am Prozessor das man Cool & Quiet die CPU runtertakten kann und dabei Strom sparen kann. Das soll nun unter Linux funktionieren; tut es auch wie ihr lesen werdet.
Inhaltsverzeichnis |
Module die geladen werden
Die C&Q Funktionen werden mit dem Modul powernow-k8 bereit gestellt. Das Modul erkennt den Prozessor und legt fest, zu welchen Frequenzen welche Spannungen benutzt werden. Bei mir sind das 1000MHz und 1,1V und 1800MHz und 1,?V (wird nachgetragen). Nun gibt es noch vier Module zur Steuerung der Frequenzen. Unter Sarge sind das allerdings nur zwei; governer-powersave und governer-performance. Ich habe mit modprobe powernow-k8 und modprobe governer-powersave meine Wahl geladen.
Automatisches Laden
Um die Module beim Starten des Rechners automatisch zu laden, trägt man sie einfach in die Datei /etc/modules ein. Jedes Modul in eine Zeile z.B.
powernow-k8
governer-powersave
Informationen im /sys Dateisystem
Im Pfad /sys/devices/system/cpu/cpu0/cpufreq findent man einige Informationen über das Frequenzhändling im System. Die Dateien beinhalten im einzelnen:
- cpuinfo_cur_freq derzeitige Frequenz
- cpuinfo_min_freq die minimal mögliche Frequenz
- cpuinfo_max_freq die maximal mögliche Frequenz
- scaling_available_frequencies die möglichen Frequenzen
- scaling_available_governors" der verfügbaren Governors
Und noch einige andere Dateien, deren Inhalt und Bedeutung fast die gleichen sind.
Konsolen Tools
Die Konsolentools stellt das Softwarepaket cpufrequtils bereit. Die Befehle lauten:
- cpufreq-info
- cpufreq-selector
- cpufreq-set
cpufreq-info gibt bei mir folgende Ausgabe:
cpufrequtils 0.2: cpufreq-info (C) Dominik Brodowski 2004 Bitte melden Sie Fehler an linux@brodo.de. analysiere CPU 0: Treiber: powernow-k8 Hardwarebedingte Grenzen der Taktfrequenz: 1000 MHz - 1.80 GHz mögliche Taktfrequenzen: 1.80 GHz, 1000 MHz mögliche Regler: powersave, performance momentane Taktik: die Frequenz soll innerhalb 1000 MHz und 1.80 GHz. liegen. Der Regler "powersave" kann frei entscheiden, welche Taktfrequenz innerhalb dieser Grenze verwendet wird. momentane Taktfrequenz ist 1000 MHz (verifiziert durch Nachfrage bei der Hardware).
Userspace-Daemon
Mit dem Paket cpudynd kann man einen Daemon installieren der auf der Grundlage der CPU-Auslastung zwischen den Frequenzen hin und her schaltet.
Installation
Mit apt-get install cpudynd sollte alles getan sein. Spätestens nach einem Neustart bzw. /etc/init.d/cpudynd start sollte die CPU bei Bedarf automatisch hoch und runter getaktet werden.
Applets
Auch gibt es für Gnome und KDE kleine Applets, die die Frequenz anzeigen und mit denen man manuell schalten kann.
- gnome-cpufreq-applet
- kcpuload
Installation und Integration
Das gnome-cpufreq-applet installiert man mit apt-get install gnome-cpufreq-applet. wer KDE benutzt macht das gleiche mit kcpuload. Immer mit der Ruhe, ich kann mir nicht alles merken.
Strom Sparen
Der ganze Aufwand wir ja betrieben, um Strom zu sparen. Ich habe mit einem handelsüblichen Engergiemessgerät gemessen. Hier nun meine Messwerte.
- 1000MHz im Leerlauf 67W
- 1000MHz unter Vollast 70W?
- 1800MHz im Leerlauf 74W?
- 1800MHz unter Vollast 105W
Gemessen wurde nur der Rechner mit Netzwerkkarte, SCSI-Karte, Festplatte, Grafikkarte, 2x DVD-Laufwerk und Floppy. Die Vollast wurde mit burnK7 aus dem Softwarepaket CPUburn erzeugt. burnK8 gibt es anscheinend noch nicht. Sollte es erscheinen werde ich die Messwerte nachreichen.
Fazit für mich
Mit 1000MHz verbraucht der Rechner genau so viel wie mein alter Celeron 1300 auf Sockel 370. Da die Frequenz ja bei Bedarf automatisch angehoben wird ist diese Technologie sicher ein richtiger Schritt in die Zukunft.
Was noch schön zu haben wäre
Es währe schön, wenn es ein Tool gäbe, mit dem man im Userspace neben der Frequenz auch noch die Kernspannung beeinflussen könnte. Ich habe gelesen dass der Atlon 64 durchaus bei 1000 MHz und 0,8V noch stabil laufen soll. In einem solchen Fall könnte der Leistungshunger der CPU bei gleicher Leistung noch weiter gedrosselt werden. Allerdings ausserhalb der Spezifikation des Prozessors. Ein Tool hierfür habe ich schon geortet, wenn ich es einsatzbereit habe berichte ich hier.
Wie kann ich den Lüfter steuern?
Irgendwie muss es ja auch möglich sein den Lüfter per Software zu steuern. Mal sehen ob ich es rausfinde.
Have Fun