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/
Conoscevo già questo fix ma per me non ha aiutato.
Infatti sono fermo in maniera stabile alla 2.6.32 del kernel che non è affetta da bug del genere (sembra)
Comunque picchio, scusami se mi permetto ma ci sono due orrori grammaticali nel post 😀
“ha elucubrazioni” senza H
“c’è la mandi buona” sarebbe ce
No non ci sono problemi, permettiti pure di correggere sempre le mie licenze picchiose xD
Licenze coglionose, direi.
Potresti magari indicarmi se ci sono ancora errori cosi posso correggerli, invece di limitarti a sottolineare che ho fatto degli errori.
Ma può anche essere che asus spari cazzate (come tutti i produttori di hw).
“e quindi ho asus spara” senza H.
..hai trovato le acca in saldo ? 😛
ops grazie pippo correggo subito 😀
Intendi una scritta simile?
ACPI _OSC control for PCIe not granted, disabling ASPM
no quello non è un output vuoto, prova a seguire la guida.
Provato. Purtroppo il bios (ultima versione) dell’ E4300 non supporta ASPM. In effetti se lo forzo, linux lo disabilita seduta stante. (Arch 32 bit con kernel 3.0). Vabbè io 4h30 le riesco a fare (anche 5). Aspetteremo una fix da intel 🙂
Post segnato 😉
bel post, bellissimo argomento, stupendo lo stile con cui lo tratti (c’è gente che spende una fortuna per stare così male da parlare così bene!)
canopus da quanto tempo! Come stai?
è molto probabile che asus, come tutti, esageri sulla durata delle batterie 😀
Il mio portatile hp, a due anni dal suo acquisto, mi garantisce una durata pari a poco più di un’ora, roba da matti! LOL
Proverò questa tip, ma dubito che risolverà qualcosa…
Dopo due anni dell’acquisto mi pare anche normale le batterie in media non campano più di 24-36 mesi xD
Anche se il mio vecchio piccino anche esso HP dopo due anni ancora mi dava le 2 ore di autonomia 😀
Dell mette una garanzia di 12 mesi sulle batterie. Quindi se all’11o mese di vita la batteria dovesse avere un’autonomia inferiore alle 2 ore chiamerò Dell e me la cambieranno. E quella nuova (e gratis) avrà altri 12 mesi di garanzia e via cosi 😀
Scusa la mia ignoranza, ma se uso Fedora 15, quindi senza grub 2 come faccio??
Be installa grub2 (sudo yum install grub2), ma prima di installare grub2 hai controllato se il tuo hardware usa ASPM ?
L’output del comando “dmesg | grep -i aspm” mi restituisce:
[ 0.747376] ACPI _OSC control for PCIe not granted, disabling ASPM
[ 0.750565] ACPI _OSC control for PCIe not granted, disabling ASPM
Quindi presuppongo di si esatto?? 🙂 quindi mi basterebbe solo installare grub2 e inserire ciò che dice la guida giusto?
Si esatto prova a seguire la guida, ma attento non è detto che la procedura funzioni quindi tieni sempre da parte un live cd per ripristinare il backup del file di grub che stai per editare.
Asus… per arrivare ad 11 ore dovrà utilizzare il super Hibryd Engine. Conosci Jupiter (http://www.jupiterapplet.org/)?
Progetto interessante non lo conoscevo, peccato mettano a disposizione solo dei .deb e dei .rpm io uso arch. Magari trovo qualcosa su AUR, grazie per la dritta 🙂
EDIT: Ho trovato il pacchetto su AUR:
http://aur.archlinux.org/packages.php?ID=43821
Appena posso provo il tutto, grazie ancora 😀
ciao picchio,
sono stefano, ho regalato nu netbook come il tuo a mia sorella,
che dopo una settimanella mi ha chiesto di installarci su un po di linux……
io ovviamente non ho esitato un secondo e le ho piazzato su mint 12 con gnome.
lei ci si trova bene ma sta batteria dura meno di 2 ore.
Te come sei messo ad autonomia???
qualche consiglio?
Molto strano due ore sono troppo poche, sei sicuro che sia il modello con la batteria a 6 celle ? Io come autonomia raggiungo facilmente le 6 ore piene e quando non lo stresso molto anche di più. Comunque sia io non ho mai provato Mint12 per via di Gnome3 forse è colpa di Gnome Shell ma è solo una mia ipotesi. Sul mio io uso Arch+KDE 4.8.