Celeron M und Stromsparfunktion
Celeron M und Stromsparfunktion
Hab die halbe Nacht versucht, meinem Celeron Notebook automatisches CPU-Frequence-Scaling beizubringen. Hab dann letztendlich entnervt aufgegeben.
Ziel: Frequenz ( Mhz) runterdrosseln, damit Strom gespart wird.
Ansätze:
1. Module geladen: cpufreq_userspace, p4-clockirgendwas,
cpufreq_powersave,speedstep_lib
2. cpufreq geladen -> Fehler!
3. sysfs gemountet, immer noch Fehler!
4. powernowd geladen, ließ sich auch nicht starten.
5. /proc/acpi ausgelesen, funktioniert alles, alles erkannt
6. Throtteling-State manuell gesetzt, funktioniert auch.
Frage: Warum nicht dynamisch mit einem Dämon?
Hab gelesen der Celeron unterstützt kein Speedstep, gibt es eine andere Möglichkeit ihm das beizubringen? Eine modifizierte cpufreqd.conf hat es auch nicht getan.
Habt ihr eine Idee?
Hardware: IBM Thinkpad R50e Celeron M 1,4,
Debian i386 unstable
- feltel
- Webmaster
- Beiträge: 10383
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
[1] http://www.heise.de/newsticker/result.x ... on%20m%20M
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Re: Celeron M und Stromsparfunktion
Willkommen im Club *gggme_max hat geschrieben:Hardware: IBM Thinkpad R50e Celeron M 1,4,
Es wird zwar beim Booten gesagt, dass "Frequency Scaling" erkannt wird, aber das wird nicht hinhauen.
Sebastian hat Dir ja schon einen Link gezeigt...diese Funktion ist eben herausgenommen worden...
Ich habe es aus Neugier ( weil eben diese Meldungen beim booten erscheinen ) auch mal probiert...aber habe dann ebenfalls das ganze "Speedstep-Geschleuder" wieder deinstalliert.
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Naja als Desktop-Ersatz ist das Notebook meiner Meinung nach nicht geeignet.me_max hat geschrieben:dann war das wohl n Fehlkauf
Es ist eben eine mobile Schreibmaschine...mit der man mal irgendwo ins Internet gehen kann und kleinere Sachen machen kann.
Für einen permanenten Einsatz würde ich dieses Notebook nicht nutzen wollen.
Hmmm...das ist eine gute Frage...warum kann windoof, den auf 800Mhz drosseln?
Wenn ich irgendwann nochmal bisschen Zeit hab, werde ich das nochmals probieren...aber bisher bin ich diesbgzl. bei diesem Notebook gescheitert.
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Hime_max hat geschrieben:dann war das wohl n Fehlkauf :<
warum kann windoof, den auf 800Mhz drosseln?
Ich revidiere alle Bemerkungen, die ich bzgl. des Frequence-Scaling bzgl Celeron CPU gesagt habe.
Das Teil lässt sich definitv Scalieren...meiner regelt sich ab nun automatisch beim Batterie-Betrieb
@ me_max:
Es geht also doch !
Du hattest Recht.
Ich habe im Moment ein Debian Testing/Etch mit Kernel 2.6.15 am laufen.
Dort habe ich dementsprechend die Kernel-Config eingestellt und mit
Code: Alles auswählen
apt-get install cpufreqd cpufrequtils lm-sensors
Bei Batteriebetrieb läuft er nun auf voller Kraft ( 1,4GHz ), wenn ich ihm den Power-Stecker ziehe regelt er herunter auf 525MHz.
Bei Bedarf regelt er nach oben und dann wieder nach unten.
Bei mir ist es folgende CPU
Code: Alles auswählen
cat /proc/cpuinfo
[...]
model name: Intel(R) Celeron(R) M processor 1400MHz
stepping: 5
[...]
Und das mit einem Celeron CPU wo ich sowas nie für möglich gehalten hab *hihi
@ feltel:
Naja...da haben wir beide mal wieder was gelernt
- feltel
- Webmaster
- Beiträge: 10383
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
Jetzt frag ich mich natürlich, ob man an dem Celeron, den ich im Büro hab und der HT laut /proc/cpuinfo hat das auch aktiviert bekommt.
- feltel
- Webmaster
- Beiträge: 10383
- Registriert: 20.12.2001 13:08:23
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Leipzig, Germany
-
Kontaktdaten:
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Hime_max hat geschrieben:cpufreq gestartet, immer noch 1,4 ghz. diesmal gabs aber keine fehlermeldung beim starten des dämon
Ich poste Dir heute N8 mal die Kernel-Config von dem 2.6.15...ich denke das wird das Problem bei Dir sein.
( Die Config müsste auch auf andre 2.6.x Kernel übertragbar sein...ausser die ipw2200 Treiber...die sind in älteren 2.6.x Kernel nicht unbedingt drin. )
- peschmae
- Beiträge: 4844
- Registriert: 07.01.2003 12:50:33
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: nirgendwo im irgendwo
Bei den Acpi-Throttling states wars zumindest bei mir nicht so. Das schlug nur grausam auf der Performance, aber da er die Core-Spannung nicht runterregelte (vermute ich) bringts genau nix.
MfG Peschmä
Da muss ich die Widersprechen. Ich finde mein R50e großartig. Die Geschwindigkeit der Komponenten reicht dicke, man bekommt alles zum Laufen und der Akku hält auch lange genug. Es kann nur keine DoubleLayer-DVDs brennen. Sonst kann man für knapp über 700€ nichts sagen.Snoopy hat geschrieben:Naja als Desktop-Ersatz ist das Notebook meiner Meinung nach nicht geeignet.me_max hat geschrieben:dann war das wohl n Fehlkauf
Es ist eben eine mobile Schreibmaschine...mit der man mal irgendwo ins Internet gehen kann und kleinere Sachen machen kann.
Für einen permanenten Einsatz würde ich dieses Notebook nicht nutzen wollen.
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Ich habe auch nicht gesagt, dass es schlecht ist....aber bei dem Teil merkt man die untere Klasse bzgl Chipset und GFXH4kk3r hat geschrieben:Da muss ich die Widersprechen. Ich finde mein R50e großartig. Die Geschwindigkeit der Komponenten[...]kann nur keine DoubleLayer-DVDs brennen. Sonst kann man für knapp über 700€ nichts sagen.
Aber wenn ich eine Weile auf das Display schaue sehe ich ganz klare Unterschiede.
Weiterhin ein grosses Manko bei diesem Notebook: Wenn man einen Beamer anschliesst und Display und Beamer anschaltet ist die Qualität bzgl. Bildqualität mehr als schlecht.
Allein das Shared Memory der Grafikkarte spricht Bände.
Als permanentes Notebook möchte ich das Teil nicht nutzen...aber bzgl Preis/Leistung kann ich mich nicht beklagen...deswegen hab ich es mir ja auch gekauft.
Wer sich mit weniger zufrieden gibt...nun der ist mit dem Teil bestimmt auch gut bedient.
Werd ich machen.peschmae hat geschrieben:Ich würde wenn ich einer von euch wäre auch mal gucken ob das Ding dann auch wirklich weniger Energie braucht.
Ich lade das Teil mal voll auf und ziehe dann den Stecker und warte bis es abraucht.
Das ganze einmal mit und einmal ohne cpufreqd.
Ich teile das Ergebnis dann mal mit...mich interessiert das nun auch, was das für ein Unterschied ist.
Das wird zwar dann sehr statisch sein...aber naja
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Vorgehensweise bzgl CPU-Scaling
Nun zurück zum Thema, hier ist meine Vorgehensweise bzgl dem CPU-Scaling auf dem IBM Thinkpad R50e des Typs
Code: Alles auswählen
Type 1834 - BYG
Code: Alles auswählen
cat /proc/cpuinfo
[...]
model name: Intel(R) Celeron(R) M processor 1400MHz
stepping: 5
[...]
Den jeweiligen CPU-Frequenz Zustand lasse ich mir unter Gnome mit dem Tool Überwachen der Prozessortaktstufen 2.10.1 anzeigen.
In dem Kernel ist ebenfalls der Treiber für die Wireless-Lan Karte als Modul aktiviert ( ipw2200 ).
Dies bedeutet, dass die Firmware 2.4 von [2] benötigt wird.
Ich erstelle keine initrd !
Ich habe alle benötigten Treiber / Module fest im Kernel oder verfügbar, dass ich ohne auskomme.
Was bei mir definitiv nicht funktioniert ist dieses dusselige Win-Modem...brauch ich auch net das Geschleuder.
Ich habe die Full Source von dem Kernel gezogen. Zum Kernel kompilieren werden die Standard-Programme benötigt ( libncurses5-dev aktuelle gcc Version ).
Siehe dazu auch das Wiki bzgl. Kernel kompilieren
Unter [3] kann man meine Kernel-Config einsehen bzw downloaden.
Diese Datei z.B. unter
Code: Alles auswählen
/boot/2.6.15_config
Die Kernel Source entpacken und unter
Code: Alles auswählen
/usr/src/linux
Code: Alles auswählen
ls -la /usr/src/linux
.
..
arch
block
COPYING
CREDITS
crypto
[...]
Code: Alles auswählen
make menuconfig
Mit dem Menüpunkt
Code: Alles auswählen
Load an Alternate Configuration File
Code: Alles auswählen
/boot/2.6.15_config
Mit
Code: Alles auswählen
Exit
Code: Alles auswählen
Do you wish to save your new kernel configuration ?
Code: Alles auswählen
Yes
Nachdem wir wieder auf der Shellebene gelandet sind den Kernel mit
Code: Alles auswählen
make bzImage modules modules_install
Wenn fertig, das Kernel-Image zur richtigen Stelle kopieren
Code: Alles auswählen
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.15-686
Code: Alles auswählen
update-grub
Ein Bsp.
Code: Alles auswählen
kernel /boot/vmlinuz-2.6.15-686 root=/dev/hda1 ro vga=791
Code: Alles auswählen
/usr/lib/hotplug/firmware
Code: Alles auswählen
ls -la /usr/lib/hotplug/firmware
.
..
ipw-2.4-boot.fw
ipw-2.4-bss.fw
[...]
Code: Alles auswählen
apt-get install cpufreqd cpufrequtils lm-sensors
Nun ein lustiger reboot von der Kiste und los geht's.
Mit eingestecktem Netzteil hat das Notebook permanent 1,4GHz, mit Accubetrieb min. 350MHz - 1,4GHz je nachdem was gebraucht wird.
Good Luck !
Und ja...wenn das neue Wiki da ist stelle ich das es rein...sofern es woanders auch funktioniert hat.
Als nächstes gehe ich hibernate an...mal sehen was das für einen Spass gibt...
[1] http://www.kernel.org/
[2] http://ipw2200.sourceforge.net/firmware.php
[3] http://nopaste.debianforum.de/2127
wlan hab ich auch drin. firmware muss ich noch updaten. im 14er ist noch 2.2 drin.
ich werd mir morgem den kernel bauen, muss jetzt ins bett, die streichhölzer knicken schon weg. danke, für dich hilfe. bis morgen
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Ich habe 2 Mal den Akku aufgeladen und jeweils einmal mit voller CPU-Leistung abgewartet bis er abraucht und das andre mal mit aktivierem cpufreqd.peschmae hat geschrieben:Ich würde wenn ich einer von euch wäre auch mal gucken ob das Ding dann auch wirklich weniger Energie braucht.
Das Ergebnis ist ernüchternd...der Unterschied liegt fast innerhalb 2 Minuten.
( Und das wird sich noch aufheben, da ich nicht per Stoppuhr gestoppt habe, sondern einfach die Uhrzeit abgelesen hab )
Also...bei mir bringt das rein für die Akkulaufzeit...nana...niente...nichts
Nun...dann schauen wir mal, wie man mit hdparm die HDD evtl zum Stromsparen bewegen kann *lach
- Snoopy
- Beiträge: 4297
- Registriert: 17.11.2003 18:26:56
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Rh.- Pflz.
Das mit hdparm war auch mehr ironisch gemeint *ggpeschmae hat geschrieben:laptop-mode-tools bringt mehr als hdparm wenns drum geht die HD zu besänftigen
@ me_max: Fein das es geklappt hat und schade, dass die Realität so ernüchternd ist
Hi ersma
Nun da ich ein paar Threads obendrüber von hibernate gesprochen habe, möchte ich die Gelegenheit ebenfalls nutzen und mal meine Vorgehensweise diesbzgl darzulegen.
Grundsätzlich ist hibernate eine Möglichkeit das Notebook zu suspenden, und zwar auf die HDD.
Es gibt sicherlich andere Ansätze ( auch Supend2RAM ) aber das wollte ich nicht.
Ich möchte hibernate als "letzten Anker" nutzen, um das Notebook, bevor ihm der Saft komplett ausgeht, auf die Disk zu bannen und in Schlummermodus zu gehen.
Da ich Gnome-User bin, kann ich solche Sachen, die es unter KDE gibt, nicht nutzen und ein Shutdown macht mich nicht glücklich, wenn ich ein ungespeichertes Dokument irgendwo im vi oder sonst wo habe.
Also es geht hier um die Installation von
- - hibernate Suspend in die Swap Partition
- Die Freigabe für einen normalen User hibernate ebenfalls zu nutzen
- Ein Shell-Skript das per Cronjob automatisch ab einer gewissen Akku-Grenze das Notebook suspendiert um Datenverlust zu vermeiden
Als erstes benötigen wir von Suspend den Suspend2 Patch für den kernel 2.6.15.
Das File legen wir uns irgendwo gemütlich ab und entpacken es. Ich habe es nach
Code: Alles auswählen
/daten/downloads/suspend/suspend2-2.2-rc16-for-2.6.15/
Code: Alles auswählen
ls -la /daten/downloads/suspend/suspend2-2.2-rc16-for-2.6.15/
100-suspend2-2.2-rc16-for-2.6.15.patch
apply
Changelog.txt
ToDo
unapply
Code: Alles auswählen
cd /usr/src/linux
Code: Alles auswählen
/daten/downloads/suspend/suspend2-2.2-rc16-for-2.6.15/apply
Damit fügen wir diesen Suspend-Patch dem Kernel hinzu.
Mit einem
Code: Alles auswählen
make menuconfig
Unter
Code: Alles auswählen
Power management options ( ACPI, APM ) --->
Code: Alles auswählen
<*> Suspend2 --->
In dem Untermenü von Suspend2
Code: Alles auswählen
<*> Swap Writer
(/dev/hda3) Default resume device name
Ebenfalls muss
Code: Alles auswählen
Cryptographic options --->
<*> LZF compression algorithm
Nun diese Kernel-Configuration habe ich beim Verlassen ebenfalls mal gespeichert.
Mit
Code: Alles auswählen
rm .version
Code: Alles auswählen
make bzImage modules modules_install
Kurz danach war es fertig und ich habe mit
Code: Alles auswählen
cp /usr/src/linux/arch/i386/boot/bzImage /boot/vmlinuz-2.6.15-686
In der Zeile wo mein 2.6.15 aufgerufen wird, suspend2=swap:/dev/hda3 hinzugefügt.
Code: Alles auswählen
kernel /boot/vmlinuz-2.6.15-686 root=/dev/hda1 ro vga=791 suspend2=swap:/dev/hda3
Code: Alles auswählen
apt-get install hibernate
Nun noch ein Reboot des Systems und hibernate ist soweit, dass es in die Swap Suspendet. Beim booten fallen einem schon die Meldungen bzgl. Suspend2 auf.
Als root-User ein
Code: Alles auswählen
hibernate
Ein Druck auf den Power-On Knopf weckt es wieder auf und ich befinde mich wieder im Gnome.
Nun das ist fein, dass der root-User das kann, aber ich will es als User auch machen können. Da bediene ich mich an sudo.
Ich habe die Datei
Code: Alles auswählen
/etc/sudoers
Nun kann ich als User andreas mir ein Icon erstellen, welches ein
Code: Alles auswählen
sudo hibernate
Nun zum "letzen Anker", der oben erwähnt wurde. Ich habe kein KDE, also ist etwas Improvisation angesagt. Mit diesem Bash-Skript kann man das einfach realisieren. Das Teil ausführbar machen
Code: Alles auswählen
chmod +x /root/skripte/batteriestatus.sh
Code: Alles auswählen
* * * * * /root/skripte/batteriestatus.sh 1> /dev/null
Als Überprüfung kann man den
Code: Alles auswählen
if [ ${_batterie_prozent} -lt 4 ]
Sodele...langer Thread, wird demnächst auch ins Wiki übernommen.
Ich gehe nun eine rauchen...habbisch mir nun verdient.
Good Luck !
P.S.: Wichtig: Wer eine initrd benutzt, sollte sich unbedingt das Howto von Suspend2 durchlesen, da werden noch weitere Einträge benötigt !
Weiterhin: Die Swap sollte mindestens so gross sein wie der physikalische RAM ( bei mir ist die Swap 1GB gross )
- peschmae
- Beiträge: 4844
- Registriert: 07.01.2003 12:50:33
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: nirgendwo im irgendwo
Zum Swap: Der muss nicht ganz zwingend so gross sein. Man kann auch die Menge des zu speichernden Rams in /etc/hibernate/hibernate.conf begrenzen. Die Kompression tut ihr übriges dazu. Am Ende läuft das dann bei mir meist auf 200 MB heraus (bei 500 MB Ram).
Allerdings ists schon schlau genug Swap zu haben sonst wird nämlich der Suspend-Vorgang abgebrochen
MfG Peschmä
Auch wenn ich Speedstep zum laufen bekommen würde, würde der Celeron M in allen States dieselbe Leistung ziehen, und dementsprechend dieselbe Abwärme erzeugen? Dann kann ich mir das also gleich sparen, und ihn die ganze Zeit auf Maximalgeschwindigkeit laufen lassen?
Mir gehts in erster Linie um die Lautstärke des Cpu-Lüfters. gibts ne Möglichkeit, den dauerhaft bei 1000U/min laufen zu lassen, anstatt ihn aller 5min bei 3000U/min angehen zu lassen?
Tschüss Sebastian
Code: Alles auswählen
cat /proc/acpi/battery/CMB1/state
1450 mA @ 600 MHz vs. 1750 mA @ 1200 MHz wenn die CPU benutzt wird.
Wenn nichts zu tun ist, schaltet die Idle-Task sowieso ziemlich viel ab,
und ob die CPU nun mit 600 oder 1200 MHz nicht läuft, macht keinen
messbaren Unterschied; bei mir sind´s 1300 mA -- also alles total normal
und egal wie werbewirksam die Takt-Umschaltung jetzt heisst.
CPU-Last kann man z.B. "cat /dev/zero > /dev/null" erzeugen.
Edit:
Es könnte also sein, dass der höhere Takt die längere Akku-Laufzeit bringt,
wel CPU-intensive Aufgaben schneller erledigt sind und der grösste Verbraucher
LCD-Beleuchtung entsprechend kürzer gebraucht wird