Zoeken op website

PowerTOP - Analyseer en beheer het stroomverbruik in Linux


Een van de belangrijkste kenmerken van een goede Linux-machine, vooral bij laptops, is energiebeheer in termen van het verlengen van de levensduur van de batterij.

Linux heeft hulpprogramma's waarmee u de prestaties van uw batterij kunt controleren en bijhouden, hoewel velen van ons nog steeds problemen ondervinden bij het verkrijgen van de juiste energie-instellingen om het energieverbruik te beheren en de levensduur van de batterij te verbeteren.

In dit artikel gaan we kijken naar een Linux-hulpprogramma genaamd PowerTOP dat je helpt de juiste systeeminstellingen te krijgen om het batterijvermogen op je Linux-machine te beheren.

Wat is PowerTOP?

PowerTOP is een terminal-gebaseerd diagnosehulpmiddel ontwikkeld door Intel waarmee u het stroomverbruik kunt controleren van programma's die op een Linux-systeem draaien wanneer dit niet op een stroombron is aangesloten.

Een belangrijk kenmerk van PowerTOP is dat het een interactieve modus biedt waarmee een gebruiker kan experimenteren met verschillende instellingen voor energiebeheer.

Vereisten

PowerTOP vereist de volgende componenten:

  • Ontwikkeltools zoals C++, g++, libstdc++, autoconf, automake en libtool.
  • Naast het bovenstaande vereist het ook pciutils-devel, ncurses-devel, en libnl-devel componenten
  • kernelversie => 2.6.38

Hoe Powertop onder Linux te installeren

PowerTOP kan eenvoudig worden geïnstalleerd vanuit de standaard systeembronnen met behulp van uw respectievelijke pakketbeheerder voor uw specifieke Linux-distributie.

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]

Belangrijk: Houd er rekening mee dat het installeren van Powertop vanuit de standaard systeembronnen u een oudere versie oplevert.

Als u de meest recente versie (d.w.z. v2.15 uitgebracht op 29 september 2022) van Powertop wilt installeren, moet u deze bouwen en installeren vanaf de broncode Hiervoor moet u de volgende afhankelijkheden op het systeem hebben geïnstalleerd.

------------------- 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

Nadat u alle bovengenoemde vereiste pakketten hebt geïnstalleerd, is het nu tijd om de nieuwste versie van PowerTop te downloaden en te installeren zoals voorgesteld:

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

Hoe gebruik ik PowerTop onder Linux?

Om deze tool te gebruiken heeft men root-rechten nodig, omdat alle informatie die Powertop nodig heeft om het energieverbruik door applicaties te meten rechtstreeks uit de systeemhardware wordt verzameld.

Probeer het te gebruiken met de batterij van een laptop om de effecten op het systeem te zien. Het toont het totale energieverbruik door het systeem en door de afzonderlijke componenten van het systeem, opgesomd in verschillende categorieën: apparaten, processen, systeemtimer, kernel werkt, en onderbreekt.

PowerTop-opties en -gebruik begrijpen

Om alle afstembare opties op de beste instellingen in te stellen zonder de interactieve modus, gebruikt u de optie --auto-tune.

Om het in de kalibratiemodus uit te voeren, gebruikt u de optie --calibrate. Als u Powertop op een laptopbatterij gebruikt, houdt het het energieverbruik bij, evenals de processen die op het systeem draaien, en nadat er voldoende stroommetingen zijn gedaan, rapporteert het stroomschattingen.

U kunt deze optie vervolgens gebruiken om geschiktere schattingen te krijgen wanneer u deze optie gebruikt, om een kalibratiecyclus te implementeren via verschillende weergaveniveaus en werklasten.

Om het in de debug-modus uit te voeren, gebruikt u de optie --debug.

U kunt ook een rapport genereren voor gegevensanalyse door de --csv=bestandsnaam te gebruiken. Het gegenereerde rapport wordt een CSV-rapport genoemd en als u geen bestandsnaam spelt, wordt de standaardnaam powertop.csv gebruikt.

Om een HTML-rapportbestand te genereren, gebruikt u de optie --html=bestandsnaam. U kunt opgeven hoe lang in seconden een rapport kan worden gegenereerd met behulp van de --time=seconds.

U kunt een werklastbestand opgeven dat moet worden uitgevoerd als onderdeel van de kalibratie voordat u een rapport genereert, met behulp van --workload=workload_filename.

Om helpberichten weer te geven gebruikt u de --help optie of bekijkt u de manpagina.

Om het aantal keren dat een test moet worden uitgevoerd op te geven, gebruikt u de optie --iteration.

PowerTop-gebruik met voorbeelden

Als u Powertop uitvoert zonder een van de bovenstaande opties, start het in een interactieve modus, zoals weergegeven in de onderstaande uitvoer.

powertop
Het overzichtsscherm

Op dit scherm kunt u een lijst bekijken van de systeemcomponenten die het vaakst wake-ups naar de CPU sturen of het meeste stroom op het systeem gebruiken.

Het scherm met inactieve statistieken

Het toont verschillende informatie over de C-status van de processor.

Het scherm Frequentiestatistieken

Dit scherm toont de frequentie waarmee de CPU wordt ontwaakt.

Het scherm Apparaatstatistieken

Het biedt informatie die vergelijkbaar is met het scherm Overzicht, maar alleen voor apparaten.

Het Tunables-scherm

Het biedt suggesties voor het optimaliseren van uw systeem voor een goed stroomverbruik.

Zoals u kunt zien in de bovenstaande uitvoer, zijn er verschillende weergaveschermen beschikbaar. Om hiertussen te schakelen kunt u de toetsen Tab en Shift+Tab gebruiken. Verlaat de powertop door op de Esc-toets te drukken, zoals vermeld onder aan het scherm.

Het toont het aantal keren dat uw systeem elke seconde ontwaakt. Wanneer u het weergavescherm met apparaatstatistieken bekijkt, toont het statistieken van het stroomverbruik door verschillende hardwarecomponenten en stuurprogramma's.

Om het batterijvermogen te maximaliseren, moet u het ontwaken van het systeem minimaliseren. Om dit te doen, kunt u het Tunables-weergavescherm gebruiken.

Met “Slecht” wordt een instelling aangegeven die geen energie bespaart, maar die wel goed kan zijn voor de prestaties van uw systeem.

Vervolgens identificeert “Goed” een instelling die energie bespaart. Druk op de [Enter]-toets op een willekeurige tuner om deze naar de andere instelling te schakelen.

Het onderstaande voorbeeld toont de uitvoer bij gebruik van de optie --calibrate.

powertop --calibrate

Na de kalibratiecycli toont de powertop het overzichtsscherm met een samenvatting van de handelingen, zoals hieronder.

PowerTop CSV-rapport genereren

Het volgende voorbeeld toont het genereren van een CSV-rapport gedurende twintig seconden.

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

Laten we nu het CSV-rapport bekijken met behulp van de cat-opdracht.

cat powertop_report.csv

Genereer een PowerTop HTML-rapport

U kunt als volgt een html-rapport genereren, de html-bestandsextensie wordt automatisch aan de bestandsnaam toegevoegd.

powertop --html=powertop

Het voorbeeld-html-rapportbestand wordt bekeken vanuit een browser.

Deze tool heeft ook een daemon-service die helpt om alle tuneables automatisch op “Good” te zetten voor optimale energiebesparing, en je kunt deze als volgt gebruiken:

systmctl start powertop.service

Om de daemon-service tijdens het opstarten te laten starten, voert u de volgende opdracht uit:

systemctl enable powertop.service
Samenvatting

U moet voorzichtig zijn bij het gebruik van de daemon-service, omdat bepaalde tunables een risico op gegevensverlies of vreemd gedrag van de systeemhardware met zich meebrengen. Dit is duidelijk te zien aan de “VM writeback timeout”-instellingen die van invloed zijn op de tijd die uw systeem wacht voordat gegevenswijzigingen naar de daadwerkelijke schijf worden geschreven.

Wanneer het systeem al zijn kracht verliest, loopt u het risico alle wijzigingen die de afgelopen paar seconden in de gegevens zijn aangebracht, kwijt te raken. Daarom moet u kiezen tussen energie besparen en uw gegevens beveiligen.

Probeer dit hulpmiddel een tijdje te gebruiken en observeer de prestaties van uw batterij. U kunt een opmerking plaatsen om ons te vertellen over vele andere soortgelijke tools of om informatie toe te voegen over het gebruik van Powertop en over fouten die u bent tegengekomen.

Vergeet niet om altijd verbonden te blijven met Tecmint om meer van dergelijke handleidingen te krijgen.