CPULimit, begrenser bruken en prosess gjør av CPUen

om CPULimit

I neste artikkel skal vi ta en titt på CPULimit. Dette er et kommandolinjeverktøy som begrenser CPU-bruk av en prosess (uttrykt i prosent, ikke CPU-tid). Dette vil være nyttig for å kontrollere batchjobber når vi ikke vil at en prosess skal konsumere for mange CPU-sykluser.

Ved bruk av dette verktøyet skal vi ikke endre verdien eller andre prioritetsinnstillinger, men den faktiske bruken av CPUen. I tillegg er det i stand til å tilpasse seg systemets generelle belastning, dynamisk og raskt. Kontrollen av mengden CPU som brukes gjøres ved å sende Senales SIG STOPP y NESTE FORTS POSIX til prosesser. Alle underordnede prosesser og tråder i den angitte prosessen vil dele den samme prosentsatsprosenten.

Installer CPULimit

CPULimit er tilgjengelig i de fleste standardregister for Unix-lignende distribusjoner. Vi kan installere den ved hjelp av standard pakkeforvaltere i den respektive Gnu / Linux-distribusjonen. For eksemplet på hånden vil vi se hvordan du installerer det på Debian, Ubuntu og Linux Mint. Vi trenger bare å åpne en terminal (Ctrl + Alt + T) og skrive følgende kommando i den:

sudo apt-get install cpulimit

Den som vil, kan konsultere andre typer anlegg i prosjekt GitHub-siden.

Bruke CPULimit

Når verktøyet er installert, er det på tide å se hvordan det fungerer. For å gjøre dette skal vi kjøre et program som bruker mye CPU-ressurser. Følgende kommandoer må kjøres som rotbruker.

Opprette et skript som bruker CPU-ressurser

Først skal vi opprett en fil som heter derrochecpu.sh. Jeg skal bruke Vim-redaktør, men la alle bruke den de foretrekker. Fra terminalen (Ctrl + Alt + T) må vi skrive:

vim derrochecpu.sh

Når den er åpen, trykker vi på '-tastenEsc' og så 'i'. Nå skal vi legge til følgende linjer:

vim script splurgecpu

#!/bin/bash
while :; do :; done;

Når dette er gjort, er det på tide å lagre og avslutte. For å gjøre dette vil vi trykke på '-tastenEsc'og vi vil skrive : Wq for å lagre og lukke filen. Dette korte skriptet gjentar sømløst og bruker maksimal CPU-bruk. Derfor anbefales det å teste den på en virtuell maskin.

Nå skal vi gjøre denne filen kjørbar. For å gjøre dette, fra samme terminal (Ctrl + Alt + T) vil vi utføre:

chmod +x derrochecpu.sh

Starter skriptet

Nå vil vi starte prosessen i bakgrunnen. Vi vil gjøre dette ved hjelp av kommandoen:

./derrochecpu.sh &

PID-skript splurgeCPU

Vi skal beholde PID for prosessen. I dette tilfellet er 6472 PID for den lanserte prosessen.

Kontrollerer hvor mye CPU den bruker

Vi kan se hvor mye CPU prosessen som vi nettopp lanserte bruker, ved hjelp av kommando «topp» i samme terminal:

topp skript splurgeCPU

top

Som det kan sees på skjermbildet ovenfor, bruker wastecpu.sh-prosessen mer enn 96% CPU-bruk. Siden det bruker mye CPU-bruk, er det vanskelig å utføre andre oppgaver. Etter noen minutter, systemet kan krasje eller fryse. Det er her CPULimt kommer til vår hjelp.

Begrensning av CPU-bruk etter PID

La oss nå begrense CPU-bruken av denne prosessen ved hjelp av CPULimit-verktøyet. Vi kommer til å begrense CPU-bruken til 35% ved hjelp av sin tilsvarende PID (Om). For å gjøre det, løp:

cpulimit -l 35 -p 6472 &
  • Valget "-l 35»Begrenser prosessen til omtrent 35%.
  • «-s 6472»Er PID for derrochecpu.sh som vi har sett før.

Kontrollere effekten av CPULimit

Når den forrige kommandoen er lansert, la oss sjekke prosessorbruken av prosessen igjen. For dette vil vi bruke toppkommandoen igjen:

toppskript CPULimit squander

top

Som du kan se på bildet ovenfor, har CPU-bruken av wastefulcpu.sh sunket til 35,6%, som er veldig nær 35%. Nå ya vi kan ha flere CPU-ressurser for å kjøre andre prosesser.

Begrensning av CPU-bruk etter filnavn

Vi har sett hvordan vi kan begrense en prosess ved hjelp av PID. Også Vi kan utføre CPULimit-kommandoen og spesifisere navnet på den kjørbare programfilen.

For eksempel vil det samme eksemplet ovenfor være:

cpulimit -l 30 ./derrochecpu.sh &

CPULimit kan være nyttig når du kjører en prosess som bruker for mye CPU-bruk. Neste gang vi merker at et program bruker for mye CPU, må vi ganske enkelt finne PID for prosessen ved hjelp av kommandoen «topp«. Når du har det, må du bare begrense CPU-bruken til en minimumsverdi ved hjelp av CPULimit-kommandoen som beskrevet i denne artikkelen.

Avinstaller CPULimit

Å fjerne dette verktøyet fra systemet vårt er så enkelt som å åpne en terminal (Ctrl + Alt + T) og skrive den inn:

sudo apt remove cpulimit

Hva denne artikkelen har beskrevet det er bare et eksempel. Åpenbart vil ingen med rett sinn lansere et skript som det som er beskrevet her på sin egen datamaskin.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.

  1.   javp sa

    Hei
    Den er perfekt for en gammel PC som jeg har med en amd64 x2 som ser ut til å ha et kjøleproblem, og når en prosess bruker mye cpu i flere minutter, varmes den opp til 100 ° C og slås av.
    Når jeg ser at en prosess (vanligvis noen nettsteder eller videogjengivelsesprogrammer) får meg til å øke temperaturen på CPU-en, vil jeg bruke cpulimit til å fjerne "strøm" fra den prosessen.
    Takk