Ricerca nel sito web

PowerTOP: analizza e gestisci il consumo energetico in Linux


Una delle caratteristiche più importanti di una buona macchina Linux, soprattutto con i laptop, è la gestione energetica in termini di prolungamento della durata della batteria.

Linux dispone di utilità che possono aiutarti a monitorare e tenere traccia delle prestazioni della batteria, anche se molti di noi hanno ancora problemi nell'ottenere le giuste impostazioni di alimentazione per gestire il consumo energetico e migliorare la durata della batteria.

In questo articolo esamineremo un'utilità Linux chiamata PowerTOP che ti aiuta a ottenere le impostazioni di sistema appropriate per gestire la carica della batteria sulla tua macchina Linux.

Cos'è PowerTOP?

PowerTOP è uno strumento di diagnosi basato su terminale sviluppato da Intel che ti aiuta a monitorare il consumo di energia da parte dei programmi in esecuzione su un sistema Linux quando non è collegato a una fonte di alimentazione.

Una caratteristica importante di PowerTOP è che fornisce una modalità interattiva che consente all'utente di sperimentare diverse impostazioni di gestione energetica.

Requisiti

PowerTOP richiede i seguenti componenti:

  • Strumenti di sviluppo come C++, g++, libstdc++, autoconf, automake e libtool.
  • Oltre a quanto sopra, richiede anche i componenti pciutils-devel, ncurses-devel e libnl-devel
  • versione del kernel => 2.6.38

Come installare Powertop su Linux

PowerTOP può essere facilmente installato dai repository di sistema predefiniti utilizzando il rispettivo gestore di pacchetti per la tua specifica distribuzione Linux.

sudo apt install powertop         [On Debian, Ubuntu and Mint]
sudo yum install powertop         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/powertop  [On Gentoo Linux]
sudo apk add powertop             [On Alpine Linux]
sudo pacman -S powertop           [On Arch Linux]
sudo zypper install powertop      [On OpenSUSE]    
sudo pkg install powertop         [On FreeBSD]

Importante: tieni presente che installando Powertop dai repository di sistema predefiniti otterrai una versione precedente.

Se stai cercando di installare la versione più recente (ovvero v2.15 rilasciata il 29 settembre 2022) di Powertop, devi crearla e installarla dal sorgente , per questo è necessario che sul sistema siano installate le seguenti dipendenze.

------------------- On Debian based Systems -------------------
sudo apt install build-essential ncurses-dev libnl-dev pciutils-dev libpci-dev libtool
------------------- On RedHat based Systems -------------------
sudo dnf install gcc-c++ ncurses-devel libnl-devel pciutils-devel libtool

Dopo aver installato tutti i pacchetti richiesti sopra, ora è il momento di scaricare la versione più recente di PowerTop e installarla come suggerito:

wget https://github.com/fenrus75/powertop/releases/download/v2.15/powertop.tar.gz
tar -xvf powertop.tar.gz
cd powertop/
./configure
sudo make && make install

Come posso utilizzare PowerTop in Linux?

Per utilizzare questo strumento, sono necessari i privilegi di root perché tutte le informazioni richieste da Powertop per misurare il consumo energetico da parte delle applicazioni vengono raccolte direttamente dall'hardware del sistema.

Prova a usarlo con l'alimentazione della batteria del laptop per vedere gli effetti sul sistema. Mostra il consumo energetico totale del sistema e dei singoli componenti del sistema elencati in diverse categorie: dispositivi, processi, timer di sistema, il kernel funziona e interrompe.

Comprendere le opzioni e l'utilizzo di PowerTop

Per impostare tutte le opzioni sintonizzabili sulle impostazioni migliori senza la modalità interattiva, utilizza l'opzione --auto-tune.

Per eseguirlo in modalità calibrazione, utilizza l'opzione --calibrate. Se esegui Powertop sulla batteria di un laptop, tiene traccia del consumo energetico e dei processi in esecuzione sul sistema e, dopo aver ottenuto misurazioni di potenza sufficienti, riporta le stime di potenza.

È quindi possibile utilizzare questa opzione per ottenere stime più appropriate quando si utilizza questa opzione, per implementare un ciclo di calibrazione attraverso diversi livelli di visualizzazione e carichi di lavoro.

Per eseguirlo in modalità debug, utilizza l'opzione --debug.

Puoi anche generare un report per l'analisi dei dati utilizzando --csv=filename. Il report generato è denominato report CSV e quando non si scrive il nome del file, viene utilizzato il nome predefinito powertop.csv.

Per generare un file di report html, utilizza l'opzione --html=filename. Puoi specificare per quanto tempo in secondi può essere generato un report utilizzando --time=seconds.

È possibile specificare un file del carico di lavoro da eseguire come parte della calibrazione prima di generare un report utilizzando --workload=workload_filename.

Per mostrare i messaggi di aiuto utilizza l'opzione --help o visualizza la pagina man.

Per specificare il numero di volte in cui un test deve essere eseguito, utilizzare l'opzione --iteration.

Utilizzo di PowerTop con esempi

Se esegui Powertop senza nessuna delle opzioni precedenti, si avvia in una modalità interattiva come mostrato nell'output di seguito.

powertop
La schermata panoramica

Questa schermata consente di visualizzare un elenco dei componenti del sistema che inviano più frequentemente risvegli alla CPU o che utilizzano più energia del sistema.

La schermata delle statistiche di inattività

Visualizza varie informazioni sugli stati C del processore.

La schermata Statistiche frequenza

Questa schermata visualizza la frequenza delle riattivazioni della CPU.

La schermata Statistiche del dispositivo

Fornisce informazioni simili alla schermata Panoramica ma solo per i dispositivi.

La schermata dei parametri sintonizzabili

Fornisce suggerimenti per ottimizzare il sistema per un buon consumo energetico.

Come puoi vedere dall'output sopra, sono disponibili diverse schermate di visualizzazione e per passare da una all'altra puoi utilizzare i tasti Tab e Maiusc+Tab. Uscire dal powertop premendo il tasto Esc come elencato nella parte inferiore dello schermo.

Visualizza il numero di volte in cui il sistema si riattiva ogni secondo, quando visualizzi la schermata di visualizzazione delle statistiche del dispositivo, mostra le statistiche del consumo energetico da parte di diversi componenti hardware e driver.

Per massimizzare la carica della batteria, è necessario ridurre al minimo le riattivazioni del sistema. Per fare ciò, puoi utilizzare la schermata di visualizzazione Tunabili.

"Cattivo" identifica un'impostazione che non consente di risparmiare energia, ma potrebbe essere positiva per le prestazioni del sistema.

Quindi "Buono" identifica un'impostazione che consente di risparmiare energia. Premi il tasto [Invio] su qualsiasi parametro sintonizzabile per passare all'altra impostazione.

L'esempio seguente mostra l'output quando si utilizza l'opzione --calibrate.

powertop --calibrate

Dopo i cicli di calibrazione, il powertop mostrerà la schermata panoramica con un riepilogo delle operazioni come di seguito.

Generazione del report CSV di PowerTop

L'esempio successivo mostra la generazione di un report CSV per venti secondi.

powertop --csv=powertop_report.txt --time=20s

Ora visualizziamo il report CSV utilizzando il comando cat.

cat powertop_report.csv

Genera report HTML PowerTop

È possibile generare un report html come segue, l'estensione del file html viene aggiunta automaticamente al nome del file.

powertop --html=powertop

Il file di report HTML di esempio viene visualizzato da un browser.

Questo strumento dispone anche di un servizio demone che aiuta a impostare automaticamente tutti i parametri sintonizzabili su "Buono" per un risparmio energetico ottimale e puoi utilizzarlo come segue:

systmctl start powertop.service

Per avviare il servizio demone all'avvio, eseguire il comando seguente:

systemctl enable powertop.service
Riepilogo

È necessario prestare attenzione quando si utilizza il servizio daemon poiché alcuni parametri sintonizzabili comportano il rischio di perdita di dati o comportamenti strani dell'hardware del sistema. Ciò è evidente con le impostazioni di "timeout writeback della VM" che influiscono sul tempo di attesa del sistema prima di scrivere eventuali modifiche dei dati sul disco effettivo.

Quando il sistema perde tutta la sua potenza, rischi di perdere tutte le modifiche apportate ai dati negli ultimi secondi. Pertanto devi scegliere tra il risparmio energetico e la protezione dei tuoi dati.

Prova a utilizzare questo strumento per un certo periodo di tempo e osserva le prestazioni della batteria. Puoi pubblicare un commento per parlarci di molti altri strumenti simili o aggiungere informazioni sull'utilizzo di Powertop e sugli errori che hai riscontrato.

Ricordati di rimanere sempre connesso a Tecmint per ottenere altre guide di questo tipo.