PowerTop - Overvåger det samlede strømforbrug og forbedrer Linux-batteriets levetid


En af de vigtigste egenskaber ved en god Linux-maskine, især med bærbare computere, er strømstyring med hensyn til forlængelse af batteriets levetid. Linux har hjælpeprogrammer, der kan hjælpe dig med at overvåge og holde styr på din batteriydelse, selvom mange af os stadig står over for problemer med at få de rigtige strømindstillinger til at styre strømforbruget og forbedre batteriets levetid.

I denne artikel skal vi se på et Linux-værktøj kaldet PowerTOP, der hjælper dig med at få de relevante systemindstillinger til at styre strøm på din Linux-maskine.

PowerTOP er et terminalbaseret diagnoseværktøj udviklet af Intel, der hjælper dig med at overvåge strømforbruget af programmer, der kører på et Linux-system, når det ikke er tilsluttet en strømkilde.

Et vigtigt træk ved PowerTOP er, at det giver en interaktiv tilstand, der giver brugeren mulighed for at eksperimentere med forskellige strømstyringsindstillinger.

PowerTOP kræver følgende komponenter:

  1. Udviklingsværktøjer såsom C ++, g ++, libstdc ++, autoconf, automake og libtool.
  2. Ud over ovenstående kræver det også pciutils-devel, ncurses-devel og libnl-devel komponenter
  3. kerneversion => 2.6.38

Sådan installeres Powertop i Linux

PowerTOP kan være let tilgængelig at installere fra systemets standardopbevaringssteder ved hjælp af din respektive pakkehåndtering.

$ sudo apt-get install powertop			[On Debian based systems]
# yum install powertop				[On RedHat based systems]
# dnf install powertop				[On Fedora 22+ systems]

Vigtigt: Bemærk, at installation af powertop fra standard systemopbevaringssteder giver dig en ældre version.

Hvis du ønsker at installere den nyeste version (dvs. v2.7 udgivet 24. november 2014) af powertop, skal du opbygge den og installere den fra kilden, for dette skal du have følgende afhængigheder installeret på systemet.

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

Efter installation af alle ovennævnte krævede pakker er det nu tid til at downloade den nyeste version af PowerTop og installere den som foreslået:

# wget https://01.org/sites/default/files/downloads/powertop/powertop-2.7.tar.gz
# tar -xvf powertop-2.7.tar.gz
# cd powertop-2.7/
# ./configure
# make && make install

Hvordan bruger jeg PowerTop i Linux?

For at bruge dette værktøj har man brug for rodrettigheder, fordi al den information, der kræves af powertop til at måle strømforbrug af applikationer, er samlet direkte fra systemhardwaren.

Prøv at bruge den med bærbar batteristrøm for at se effekterne på systemet. Det viser det samlede strømforbrug af systemet og af de enkelte komponenter i systemet, der er anført i forskellige kategorier: enheder, processer, systemtimer, kerner fungerer og afbryder.

For at indstille alle tunabale-indstillinger til de bedste indstillinger uden den interaktive tilstand, skal du bruge indstillingen --auto-tune .

For at køre det i kalibreringstilstand skal du bruge indstillingen --calibrate . Hvis du kører powertop på bærbar batteri, sporer det strømforbrug såvel som processer, der kører på systemet, og efter at have fået tilstrækkelige strømmålinger, rapporterer det strømoverslag.

Du kan derefter bruge denne mulighed for at få mere passende estimater, når du bruger denne mulighed, til at implementere en kalibreringscyklus gennem forskellige skærmniveauer og arbejdsbelastninger.

For at køre det i fejlretningstilstand skal du bruge indstillingen --debug .

Du kan også generere en rapport til dataanalyse ved hjælp af --csv = filnavn . Den genererede rapport kaldes en CSV-rapport, og når du ikke stave et filnavn, bruges et standardnavn powertop.csv.

For at generere en html-rapportfil skal du bruge indstillingen --html = filnavn . Du kan angive, hvor længe i sekunder en rapport kan genereres ved hjælp af --time = seconds .

Du kan angive en arbejdsbelastningsfil, der skal udføres som en del af kalibreringen, før du genererer en rapport ved hjælp af --workload = workload_filename .

For at vise hjælpemeddelelser skal du bruge indstillingen --help eller se manpage.

For at specificere antallet af gange, en test skal køres ved hjælp af indstillingen --iteration .

PowerTop-brug med eksempler

Hvis du kører powertop uden nogen af ovenstående muligheder, starter den i en interaktiv tilstand som vist i output nedenfor.

# powertop

Denne skærm giver dig mulighed for at se en liste over de systemkomponenter, der enten ofte vågner til CPU'en eller bruger mest strøm på systemet.

Det viser forskellige oplysninger om processor C-tilstande.

Denne skærm viser hyppigheden af wake-ups til CPU'en.

Det giver information svarende til oversigtsskærmen, men kun for enheder.

Det giver forslag til optimering af dit system til et godt strømforbrug.

Som du kan se fra output ovenfor, er der forskellige displayskærme tilgængelige, og for at skifte mellem dem kan du bruge Tab- og Shift + Tab-tasterne. Afslut powertop ved at trykke på Esc-tasten som vist i bunden af skærmen.

Det viser antallet af gange, dit system vågner op hvert sekund, når du ser skærmbilledet til enhedsstatistik, viser det statistik over strømforbrug fra forskellige hardwarekomponenter og drivere.

For at maksimere batteristrøm skal du minimere systemvækninger. Og for at gøre dette kan du bruge Tunables-skærmbilledet.

"Dårlig" identificerer en indstilling, der ikke sparer strøm, men som kan være god for dit systems ydeevne.

Derefter identificerer “God” en indstilling, der sparer strøm. Tryk på [Enter] -tasten på en hvilken som helst tunbar for at skifte den til den anden indstilling.

Eksemplet nedenfor viser output, når du bruger indstillingen --kalibrer .

# powertop --calibrate

Efter kalibreringscyklusser viser powertop oversigtsskærmen med en oversigt over handlinger som nedenfor.

Det næste eksempel viser generering af en CSV-rapport i tyve sekunder.

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

Lad os nu se CSV-rapporten ved hjælp af kommandoen cat.

# cat powertop_report.csv

Du kan generere en html-rapport som følger, html-filtypen føjes automatisk til filnavnet.

# powertop --html=powertop

Eksempel på html-rapportfil set fra en browser.

Dette værktøj har også en dæmontjeneste, der hjælper med automatisk at indstille alle tunables til "Good" for optimal strømbesparelse, og du kan bruge den som følger:

# systmctl start powertop.service

For at få dæmontjenesten til at starte ved opstartstid skal du køre følgende kommando:

# systemctl enable powertop.service

Resumé

Du skal være forsigtig, når du bruger dæmontjeneste, fordi visse tunables udgør en risiko for datatab eller underlig systemhardwareadfærd. Dette er tydeligt med indstillingerne for "VM-tilbagekøbstimeout", der påvirker den tid, dit system venter, før du skriver ændringer af data til den aktuelle disk.
Når systemet mister al sin magt, risikerer du at miste alle ændringer foretaget på data i de sidste par sekunder. Derfor skal du vælge mellem at spare strøm og sikre dine data.

Prøv at bruge dette værktøj i en periode og følg batteriets ydeevne. Du kan skrive en kommentar for at fortælle os om mange andre lignende værktøjer eller tilføje oplysninger om brugen af powertop, om fejl, du har stødt på. Husk altid at være forbundet med Tecmint for at få flere af sådanne guider.