Il problema dei consumi energetici sul kernel linux

Da qualche tempo in giro si leggono sempre più voci che si lamentano dell’aumento dei consumi energetici del kernel linux dovuti a qualche bug e a elucubrazioni varie dei bios. Dunque in questo post non vi proporrò una soluzione definitiva ai vostri consumi perché magari essi dipendo da altri fattori come ad esempio porno in HD sempre attivi, blututto sempre accesso, musica sempre in sottofondo, flash player a palla (aka youtube perennemente utilizzato) e altre amenità varie.

Dunque cominciamo col dire che la soluzione di cui sono venuto a conoscenza deriva da questo post che a sua volta cita come fonte il famoso phoronix. Il problema in particolare sembra derivare dal‘ASPM ovvero dall’Active-State Power Manager che in soldoni è un protocollo delle periferiche PCI-express per aumentare la durata della batteria dei nostri notebook. In pratica sembra che il kernel linux non riceva istruzioni di attivare tale protocollo dal bios il che ovviamente porta ad un aumento dei consumi.

Quindi dobbiamo essere noi stessi ad indicarlo al kernel, anche se avrei preferito prendere a sberle i produttori dei bios. Dunque cominciamo dal capire se il nostro pc usa l’ASPM, se nessuna periferica del nostro pc usa questo protocollo allora la guida è inutile e quindi l’aumento dei consumi deriva da altre cose e/o dalla batteria che sta invecchiando.

Per sapere il nostro hardware usa ASPM basta dare nel terminale questo comando: dmesg | grep -i aspm

Se ci esce un output vuoto allora non dobbiamo seguire i prossimi passi della guida

Se invece ci esce qualcosa allora dobbiamo andare a modificare una riga di grub2, ma prima è sempre meglio fare un backup: sudo cp -p /etc/default/grub /etc/default/grub_orig

e adesso modifichiamo il file: gksu gedit /etc/default/grub

e andiamo a cercare questa riga: GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”

una volta trovata dobbiamo modificarla in questo modo: GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash pcie_aspm=force”

Fate molte attenzione nel modificare la riga perché se sbagliate so cazzi vostri non vi si avvierà più il sistema e dovrete ripristinare il file usando il backup di poco fa.

In fine salviamo il file modificato e aggiorniamo grub dando nel terminale: sudo update-grub

Fatto questo riavviamo il pc,  preghiamo Odino perché ce la mandi buona e se la nostra distro si avvia correttamente facciamo anche un bel rito di sangue con un pollo nero in una notte di luna piena.

Tuttavia come dice lo stesso phoronix questo “fix” non funge per tutti infatti su una ristretta fascia di hardware pare non funzionare.

Io personalmente non ho hardware che usano ASPM nel mio piccino e ho una autonomia di 7 ore su 11 promesse quindi o asus spara cazzate oppure i mie consumi derivano da altro (cosa più plausibile). Dunque ora andate in pace la messa satanica è finita!

Update: Gente cercando un po in giro ho trovato anche questo post che ci da altre tre possibili soluzioni per l’eccessivo consumo energetico ma esse sono adatte solo a certi tipi di hardware quindi attenti a ciò che fate e vi raccomando di fare sempre un backup dei file che andate a modificare.

:# /dev/null/

Rendiamo grazie a Linus per il nostro kernel….

Ebbene rendiamo grazie a Linus e ad Edmond per il nostro kernel quotidiano e aggiornato, cosi nei desktop come nei server!

Adesso figlioli andate in pace e diffondete il verbo del kernel Linux 2.6.36 pacchettizzato e anche compilato dal mitico Edmond!

ecco il nuovo kernel sulla mia debianbox del piccino 😀

:# /dev/null/

La lista è lunghissima! Riducila!

Testuali parole di mio padre davanti alla lista di Grub dei Kernel Linux (e di DUE windows XP) presenti sul mio pc fisso.

(Effettivamente avere 6 kernel non è molto utile (3 per Mint e 3 per debian) visto che di solito ne uso solo uno alla volta.)

Ma non lo so avvolte mio padre si dimentica che non ho la bacchetta magica e che non posso far sparire delle cose cosi a comando.(be forse dopo aver ri-visto “La spada nella roccia” mi padre si è un po confuso)

Specialmente parlando di Kernel che sono il “deo ex machina” che fa muovere l’intero sistema GNU.
(eccovi un tipico esempio di “deo ex machina” originario del mio pc fisso)

Rimuovere un kernel non è un operazione tanto difficile ma molto dico molto rischiosa!

Infatti un comando e una modifica sbagliata potrebbe causare un vero è proprio armageddon nel tuo sistema.(originale metafore di un mini-armageddon sulla bocca di Homer)

Cosi tanto per puro scopo informativo possiamo vedere a questo link il procedimento, un po macchinoso, che è necessario per rimuovere i vecchi kernel.

Fortunatamente la mia Sidux mi è venuto in contro 😀(si si esatto è arrivata proprio lei!….cioè no non proprio xD)

Infatti spulciando tra le voci del menù ho trovato un programmino preinstallato che fa proprio al caso mio 😀
Si chiama Kernel-remover e il nome dice tutto, cosi ci ho cliccato sopra e mi ha chiesto la password di root, una volta immessa la password ci troviamo di fronte alla lista dei kernel installati sul sistema:Io ho selezionato il più vecchio che avevo (qui mostra solo i kernel di Debian ma appena ho tempo lo installo anche su Mint) e ho cliccato ok.Mi ha chiesto conferma e io ho detto si e tutto è finito li, un po dubbioso ho dato un grub-update e magia! Il vecchio kernel è scomparo 😀

Cosa altro dire se non che Sidux è il BENE!

PS: Non ho ancora controllato se è presente nei repo di Ubuntu, e visto che me lo sono trovato installato dopo l’installazione di Sidux non so neanche se è presente nei repo di Debian.

PS#2: A si tutti i diritti riservati alla FOX per l’utilizzo delle immagini di Homer ma si sa lui è una patrimonio dell’umanità riconosciuto dall’UNESCO quindi come si fa a non usarlo?! xD

Update:

Ho cercato nei repo di Ubuntu ma di Kernel-remover non vi è traccia, quindi i mie sospetti erano fondati kernel-remover è un esclusiva di Sidux.

Cosi come suggerito nei commenti ho provato a fare pulizia dei kernel con Ubuntu-Tweak ed è stato davvero facile:Al contrario di Kernel-remover, Ubuntu-tweak non vi lascia interdetti ma vi compare un tranquillante messaggio di conferma dell’operazione…..ma io per scrupolo un grub-update lo do sempre xD.