Batteria, meno di due ore contro le 3 di windows

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
elettronicha
Master
Master
Messaggi: 1712
Iscritto il: mer 13 apr 2005, 0:00
Località: Torino
Contatta:

Messaggio da elettronicha »


Avatar utente
syaochan
Linux 3.x
Linux 3.x
Messaggi: 659
Iscritto il: dom 9 mag 2004, 0:00
Nome Cognome: Christian
Slackware: current 64
Kernel: 2.6.38.7
Desktop: KDE 4.5.5
Contatta:

Messaggio da syaochan »

se interessa, su linux&c di maggio c'e' un articolo dedicato proprio al risparmio della batteria, mi sembra ben fatto anche se, non avendo il portatile, non posso provare

Avatar utente
People
Linux 2.x
Linux 2.x
Messaggi: 216
Iscritto il: mar 22 giu 2004, 0:00
Slackware: 12.1
Kernel: 2.6.
Desktop: KDE

Messaggio da People »

Nella configurazione del kernel, setti il tipo della cpu che hai (athlon, pentium ecc..)... poi ti dovresti trovare anche le seguenti opzioni

Codice: Seleziona tutto

 Power management options (ACPI, APM) ---> CPU Frequency scaling --->
    [*] CPU Frequency scaling
    <*> /proc/cpufreq interface (deprecated)
    Default CPUFreq governor (performance)
    <*> 'powersave' governor
    <M> 'ondemand' cpufreq policy governor
    <*> CPU frequency table helpers
    <M> Intel Enhanced SpeedStep
    [*] Use ACPI tables to decode valid frequency/voltage pairs (EXPERIMENTAL)
Devi attivare il "CPU Frequency scaling" e i 3 governor, performance, powersave e on demand. Una volta ricompilato il kernel in /sys/devices/system/cpu/cpu0/cpufreq/ ti dovresti trovare una serie di files per configurare / verificare il funzionamnto dello frequency scaling.
Puoi conoscere le varie frequenze disponibili per la tua cpu, la frequenza attuale, la massima e la minima frequenza i governor disponibili ed il governor attuale...
I governor sono le modalità con cui il kernel "approccia" la questione del risparmio energetico. Li selezioni dando un

Codice: Seleziona tutto

echo "governor che vuoi" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
il governor performance spara sempre al massimo la frequenza, non badando a spese, il governor powersave, invece è super conservativo e tiene la frequenza sempre al minimo, risparmiando al massimo :D , il governor ondemand (introdotto di recente) invece adegua la frequenza al carico della cpu.
Se usi il governor ondemand, sotto /sys/devices/system/cpu/cpu0/cpufreq/ ti troverai ulteriore directory "ondemand" appunto dove potrai parametrizzare la "reattivitá" del kernel ai cambi, le soglie di carico minimo e massimo della cpu per passare alla frequenza successiva, il tempo di campionamento del carico della cpu ed altri ancora!
Il config che ho riportato sopra è solo un esempio perchè qui non ho la mia slack, mi dispiace. Se vuoi approffondire, nella documentazione del kernel troverai altre info.
Infine mi scuso per la prolissità, se non riesci posta qui. :wink:
Ciao.
P.

P.S il governor userspace da la possibilità ad un programma che gira in userspace appunto di cambiare la frequenza in base al carico della cpu, ma con il governor ondemand fa tutto il kernel senza dover installare altri programmi.

newroz
Linux 1.x
Linux 1.x
Messaggi: 109
Iscritto il: dom 13 mar 2005, 0:00
Località: Caserta
Contatta:

Messaggio da newroz »

Ho ricompilato il kernel aggiungendo il "Power Management Qualchealtracosa", che mancava... Ora riesco anche a mettere il pc in standby, da questo penso di poter capire di aver aggiunto quello che mi serviva.
Ora il problema è come regolare le frequenze del mio processore, io non ne capisco minimamente... Esistono dei criteri sui quali posso basarmi? Degli standard? O devo fare io ad caz*um? :)
Grazie!



PS. Nella ricompilazione mi è scomparsa la wireless... :evil: Ma sarei OT ed evito richieste. :cry:

Avatar utente
People
Linux 2.x
Linux 2.x
Messaggi: 216
Iscritto il: mar 22 giu 2004, 0:00
Slackware: 12.1
Kernel: 2.6.
Desktop: KDE

Messaggio da People »

Hai attivato il CPU Frequency scaling ? se si hai provato vedere cosa ti trovi in /sys/devices/system/cpu/cpu0/cpufreq/ ?

newroz
Linux 1.x
Linux 1.x
Messaggi: 109
Iscritto il: dom 13 mar 2005, 0:00
Località: Caserta
Contatta:

Messaggio da newroz »

Si, ci sono dei file:

Codice: Seleziona tutto

affected_cpus     cpuinfo_min_freq               scaling_cur_freq  scaling_max_freq
cpuinfo_cur_freq  scaling_available_frequencies  scaling_driver    scaling_min_freq
cpuinfo_max_freq  scaling_available_governors    scaling_governor  scaling_setspeed

Avatar utente
People
Linux 2.x
Linux 2.x
Messaggi: 216
Iscritto il: mar 22 giu 2004, 0:00
Slackware: 12.1
Kernel: 2.6.
Desktop: KDE

Messaggio da People »

Molto bene!!!
Ora dai

Codice: Seleziona tutto

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
In questo file sono elencati i governor che il kernel ha a disposizione; se tra questi c'è ondemand siamo a posto, se manca dobbiamo mettere mano ancora al kernel.

Nel caso ondemand sia presente dai il comando

Codice: Seleziona tutto

echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
poi, se tutto funziona, questo comando lo puoi mettere in rc.local!
Prova a dare ora:

Codice: Seleziona tutto

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
e dovresti vedere la frequenza di lavoro attuale della cpu, che dovrebbe essere bassa...
Ora, per verificare che tutto funzioni prova a fare partire un programma che richiede un po di risorse, che ne so, openoffice, gimp, firefox ma basta anche konqueror e prova a dare ripetutamente, in un terminale cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq. Dovresti vedere che la frequenza schizza al massimo, poi quando il programma è che hai lanciato è partito piano piano la frequenza diminuisce ancora fino al minimo.
Fammi sapere se funge.
Ciao
P.

newroz
Linux 1.x
Linux 1.x
Messaggi: 109
Iscritto il: dom 13 mar 2005, 0:00
Località: Caserta
Contatta:

Messaggio da newroz »

Perfetto, è come dici! :) Metto il comando in rc.local... Proverò più tardi ad utilizzare la batteria, e vi terrò aggiornati sui tempi! :) Grazie ancora...

Avatar utente
MAT
Linux 4.x
Linux 4.x
Messaggi: 1242
Iscritto il: mer 9 mar 2005, 0:00
Nome Cognome: Matteo Magni
Kernel: 2.6.20
Desktop: Fluxbox
Distribuzione: Gentoo
Località: Vignola, Modena

Messaggio da MAT »

People ha scritto:Nella configurazione del kernel, setti il tipo della cpu che hai (athlon, pentium ecc..)... poi ti dovresti trovare anche le seguenti opzioni
[cut]
Ottima spiegazione, grazie mille!! Ora ho capito anche io perché `cat /proc/cpuinfo` mi mostrava una frequenza di 700 MHz per ilmio Athlon XP 2800+... stava usando il governor ondemand. Con il performance invece è salito oltre i 2 GHz! :)
Dovresti scrivere un tutorial per slacky :)

newroz
Linux 1.x
Linux 1.x
Messaggi: 109
Iscritto il: dom 13 mar 2005, 0:00
Località: Caserta
Contatta:

Messaggio da newroz »

Dovresti scrivere un tutorial per slacky :)
Appoggio la richiesta, sei stato chiarissimo. ;)

Avatar utente
MAT
Linux 4.x
Linux 4.x
Messaggi: 1242
Iscritto il: mer 9 mar 2005, 0:00
Nome Cognome: Matteo Magni
Kernel: 2.6.20
Desktop: Fluxbox
Distribuzione: Gentoo
Località: Vignola, Modena

Messaggio da MAT »

In ogni caso, io uso il governor ondemand, ma la batteria dura comunque un'ora circa contro le quasi 2 di win. Forse il problema sta nel monitor? Da quanto ho visto su questa pagina la maggior parte dell'energia se ne va per il display.
L'opzione suggerita da Sickk è già presente nel mio xorg.conf. Ci sono altre ottimizzazioni che potrei adottare? O rassegnarmi? :)

P.S. domanda: come si mette il laptop in standby?

Avatar utente
People
Linux 2.x
Linux 2.x
Messaggi: 216
Iscritto il: mar 22 giu 2004, 0:00
Slackware: 12.1
Kernel: 2.6.
Desktop: KDE

Messaggio da People »

Io ho ottenuto dei tempi di batteria simili a windslow...
MAT, lascia settato ondemand per ottimizzare la batteria!!!

io uso un trucchetto che mi permette di ottimizzare le prestazioni della batteria.

Premetto che uso il pc per posta, internet, programmazione (mi diletto), quindi non ho bisogno di continue prestazioni da urlo.

Ho inserito nel mio rc.local anche

Codice: Seleziona tutto

 echo 1700000 >  sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
perchè? Perche il governor ondemand si comporta così: appena il carico della cpu sale sopra il valore scritto in uno dei files in /sys/devices/system/cpu/cpu0/cpufreq/ondemand/ (non ricordo esattamente quale scusate!! :oops: ) il governor porta la frequenza al massimo (anche se magari non serve proprio il massimo!) e poi piano piano scende. Solo portando una finestra da icona a tutto schermo la frequenza si impenna e ci mette qualche secondo a tornare giù (anche questo tempo comunque è impostabile).
Risultato: la cpu rimane per un tempo rilevante ad una frequenza superiore a quella che serve.
Quindi limitando un po la massima frequenza, nel mio modo di utilizzo del pc non ho una notevole riduzione delle prestazioni ma riesco risparmiare un po di più la batteria.
Un'altra cosa; i settaggi del governor ondemand possono essere modificati da acpi: attacando o staccando l'alimentatore acpi può modificare i parametri del governor ondemand per rendere più o meno conservativo il risparmio energetico.
Ultima cosa: Esiste un plugin per gkrellm, se lo usate ovviamente, che mostra la frequenza della cpu, puo essere interessante per tenere monitorato il comportamento del frequency scaling (:oops: Ehm... Non ho qui il nome... :oops: ).
Vi ringrazio e mi scuso per la brodosità :D , per l'howto, è da un po che pensavo di buttarlo giù, se riesco a trovare il tempo lo mando a Lorys per metterlo qui.

Ciao
P.

Avatar utente
MAT
Linux 4.x
Linux 4.x
Messaggi: 1242
Iscritto il: mer 9 mar 2005, 0:00
Nome Cognome: Matteo Magni
Kernel: 2.6.20
Desktop: Fluxbox
Distribuzione: Gentoo
Località: Vignola, Modena

Messaggio da MAT »

People ha scritto:MAT, lascia settato ondemand per ottimizzare la batteria!!!
Sì, l'ho lasciato ondemand, l'ho messo un attimo a performance solo per vedere se effettivamente la frequenza della cpu veniva variata (almeno in /proc/cpufreq) :)
People ha scritto:io uso un trucchetto che mi permette di ottimizzare le prestazioni della batteria.
[cut]
Buona idea :)

Vi ringrazio e
People ha scritto: mi scuso per la brodosità :D , per l'howto, è da un po che pensavo di buttarlo giù, se riesco a trovare il tempo lo mando a Lorys per metterlo qui.
Ottimo. Grazie ancora.

Riguardo lo standby come posso attivarlo?

Avatar utente
People
Linux 2.x
Linux 2.x
Messaggi: 216
Iscritto il: mar 22 giu 2004, 0:00
Slackware: 12.1
Kernel: 2.6.
Desktop: KDE

Messaggio da People »

Non ne ho idea, è una cosa che non ho mai utilizzato, non sapreti come aiutarti... forse newroz ne sa qualcosa....

Ciao.
P.

newroz
Linux 1.x
Linux 1.x
Messaggi: 109
Iscritto il: dom 13 mar 2005, 0:00
Località: Caserta
Contatta:

Messaggio da newroz »

Io ho semplicemente abilitato "Power management option" nel kernel, e ho ricompilato. Ora in klaptop mi viene visualizzato anche "sospendi" e "blocca e sospendi"... Penso sia sufficente così. Penso...

Rispondi