martedì 1 giugno 2010

Aspire One, Xubuntu: il modulo "acerhdf"e la gestione della ventola

A partire dalle versioni 2.6.31 il modulo "acerhdf", di Peter Feurer, è parte integrante del kernel di Linux. La gestione della ventola, con il modulo "acerhdf", nei modelli 110L e 110X dell'Aspire One, permette di aumentare l'autonomia della batteria e di diminuirne la rumorosità. Chi avrà installato Ubuntu 9.10 (Karmic koala) sull'Aspire One avrà sicuramente notato il rumore emesso dalla ventola, quasi perennemente accesa. Il modulo per la gestione della ventola non viene caricato di default e la stessa viene allora azionata ad opportuni valori di default della temperature di cpu. I valori di default, essendo troppo bassi, costringono la ventola a restare accesa quasi subito dopo aver avviato il sistema operativo!
Con "acerhdf" possiamo ottimizzare l'uso e la durata della batteria andando ad azionare la ventola di raffreddamento a valori di temperatura più idonei al processore Intel Atom N270, continuate a leggere e vedremo come fare.
Per generalizzare un po il discorso accertiamoci in ogni caso della presenza del modulo "acerhdf" digitando in una finestra di terminal (che in Xubuntu è avviabile dal menù delle applicazioni oppure premendo i tasti "Alt" ed "F2", digitando "xfce4-terminal" e cliccando sul bottone "Esegui"):

light-kun@ryuk:~$ lsmod | grep acerhdf
acerhdf 8116 0
light-kun@ryuk:~$

Il comando "lsmod" ritorna un elenco, molto lungo, di tutti i moduli presenti nel kernel. Per questo motivo l'output generato viene poi passato e filtrato dal successivo comando "grep" che estrae dalla lista, se presente, la riga che contiene informazioni sul modulo "acerhdf" ("grep" è bravo e veloce nel fare questo genere di lavori, ricordatevelo). Se avete seguito l'installazione di Xubuntu 9.10 potete stare tranquilli, come dicevo all'inizio il modulo è stato integrato nel kernel!
Gli utenti che al momento usano altre distribuzioni Linux, prima di passare alla configurazione di "acerhdf", devono necessariamente aggiungere lo stesso nel kernel, compilandolo e installandolo. Esiste più di un modo per avviare il modulo "acerhdf", uno di questo prevede la modifica di un file di sistema (tranquilli, bisogna scrivere poca roba). Aprite il file "/etc/modules" e aggiungete la riga "acerhdf" (subito dopo la riga "lp"). Accedete (in scrittura) al file con questo comando:

light-kun@ryuk:~$ sudo mousepad /etc/modules

Vi verrà chiesta la password del super utente (gli utenti di altre distribuzioni potrebbero non avere Mousepad, in tal caso bisogna sostituire "mousepad" con il nome di un altro editor) che, se esatta, vi permetterà di accedere al file e di aggiungere quindi la riga "acerhdf":


l modulo si serve di un file di configurazione per impostare la temperatura (in gradi centigradi) di accensione e spegnimento della ventola (oltre all'intervallo, in secondi, di lettura della temperatura).
Creare, allora, il file "/etc/modprobe.d/acerhdf.conf" e scrivere all'interno la seguente riga "options acerhdf verbose=0 fanon=55 fanoff=50 interval=10 kernelmode=1". Potete fare quanto appena detto con Mousepad (copiate e incollate nell'editor la riga appena indicata). Apriamo l'editor con:

light-kun@ryuk:~$ sudo mousepad /etc/modprobe.d/acerhdf.conf


Attenzione, nelle nuove versioni del modulo "acerhdf" le temperature vengono indicate in millesimi! Se con i valori visti nell'esempio sentiamo la ventola sempre accesa provate allora a scrivere la riga per le opzioni in questo modo: "options acerhdf verbose=0 fanon=55000 fanoff=50000 interval=10 kernelmode=1".
Possiamo spostare l'intervallo di accensione e spegnimento della ventola modificando, rispettivamente, i valori di "fanon" e "fanoff" all'interno del file. La frequenza di lettura della temperatura può essere modificata attraverso il parametro "interval". Se all'avvio il caricamento del modulo non riesce, la gestione della ventola avverrà con i valori di default previsti nel kernel (quelli finora usati). Date il comando "dmesg | grep acerhdf" per verificare all'avvio del sistema operativo se il modulo "acerhdf" è in funzione, in caso affermativo riceverete una risposta di questo tipo:

light-kun@ryuk:~$ dmesg | grep acerhdf
[ 5.526999] acerhdf: Acer Aspire One Fan driver, v.0.5.16
light-kun@ryuk:~$

Non rimane, adesso, che chiarire quali valori di temperatura utilizzare. La scelta influenzerà inevitabilmente la durata della batteria e a seconda dell'utilizzo sentiremo partire prima o dopo l'accensione della ventola. Ho sperimentato diversi valori prima di fissare gli stessi, almeno nel mio caso. Se si impostano i valori di "fanon" e "fanoff" su valori troppo bassi c'è il rischio di tenere comunque sempre accesa la ventola di raffreddamento. Sul sito di Intel le specifiche termiche riferiscono di una temperatura massima, sopportabile dal processore, di 90°C. Il consiglio è quindi quello di restare lontani (molto lontani) da quel valore. Inutile, poi, far partire la ventola di raffreddamento già a 40°C, come avviene di default senza il modulo "acerhdf". Tale temperatura viene raggiunta in poco tempo dal processore, ecco perchè senza il modulo "acerhdf" sentiamo la ventola di raffreddamento accendersi subito. I valori da me proposti invece permettono di usare l'Aspire One (con un browser e un editor di testo in esecuzione) per i primi 15 minuti (circa) senza sentire la ventola di raffreddamento (tanto impiega il processore a raggiungere la temperatura di "fanon" scelta). Infine, se non volete sentire l'accensione della ventola con troppa frequenza meglio allora distanziare i valori di "fanon" e "fanoff". Ricordate però che più la temperatura di "fanon" è alta e più la ventola farà fatica a farla scendere al valore di "fanon" (la temperatura è una proprietà intensiva!). Non esistono dei valori buoni per tutti, molto dipende da come utilizzate l'Aspire One. Qui trovate le istruzioni per scrivere un script e integrare nel pannello di Xubuntu le informazioni sullo stato della ventola di raffreddamento e della temperatura del processore.

Nessun commento:

Posta un commento