14 kommandolinjeverktøy for å sjekke CPU-bruk i Linux
CPU-ytelse er et aspekt ved måling av ytelsen til et system. Overvåking av ytelsen til CPU er viktig for å feilsøke prosesser i ethvert system, administrere systemressurser, ta systembeslutninger, og evaluere og undersøke systemer i sanntid.
Det er mange verktøy tilgjengelig for å overvåke og vise CPU-ytelse. Operativsystemer har innebygde systemanrop som disse verktøyene er avhengige av for å hente ut ytelsesavlesningene.
I denne veiledningen vil vi utforske det beste overvåkingsverktøyet for CPU-bruk og deres bruksområder i alle Linux-baserte distroer.
1) Topp
Toppkommandoen viser sanntidsvisning av ytelsesrelaterte data for alle prosesser som kjører i et system. Som standard oppdaterer toppkommandoen data hvert 5. sekund. Skriv «topp» fra terminalen for å vise statistiske data relatert til ytelsen til et system.
# top
For å endre utgangen fra toppkommandoen, trykk på:
«P» for å sortere etter CPU-bruk.
«I» for å fjerne ledige prosesser fra skjermen og for å tilbakestille, trykk «I» igjen.
«M» for å sortere data etter minnebruk.
«S» for å sortere etter hvor lenge prosessene har kjørt.
«P» for å sortere etter CPU-bruk.
«U» for å se prosesser som eies av en bestemt bruker.
«K» for å drepe prosesser.
«R» for å nekte prosesser.
2) Iostat
iostat-kommandolisten CPU-bruk, enhetsbruk og nettverksfilsystembruk. Dette verktøyet viser systemets gjennomsnittlige CPU-bruk siden forrige omstart. Å kjøre følgende kommando uten noen alternativer viser alle de tre rapportene.
# iostat
For å liste opp den enkelte rapporten, bruk -c, -d og -h-bryter for CPU-bruk , enhetsbruk og nettverksfilsystembruk. Følgende kommando vil dele CPU-bruken i brukerprosesser, systemprosesser, I / O ventetid og inaktiv tid.
# iostat -c
Følgende kommando vil vise utvidet statistikk ( -x), antall ganger (-t) hver rapport skal vises for CPU-bruk (-c).
# iostat -xtc 5 2
3) Vmstat
Kommandoen vmstat viser statistikk om systemprosesser, minne, bytte, I / O og CPU-ytelse. For å vise statistikk blir dataene samlet inn fra sist gang kommandoen ble kjørt til i dag. Hvis kommandoen aldri kjøres, vil dataene være fra den siste omstart til gjeldende tid.
På flere CPU-systemer, beregner vmstat gjennomsnittlig antall CPUer i utgangen. Kommandoen vmstat oppdaterer utdataene som toppkommando.
Følgende kommando oppdaterer rapporten hvert 5. sekund til det er et avbrudd.
# vmstat 5
Følgende kommando viser dataene som oppdateres hvert 5. sekund, og verdiene måles på nytt og rapporteres hvert 1. sekund.
# vmstat 1 5
første linje skriver ut gjennomsnittsverdiene siden sist datamaskinen ble startet på nytt. Resten av linjene vil vise gjeldende verdier. En vanlig bruker kan kjøre vmstat-kommandoen.
4) Mpstat
Mpstat er en del av sysstat-pakken i Linux. Kommandoen mpstat skriver til standardutdata om aktiviteter for hver tilgjengelige prosessor, prosessor 0 er den første. Hvis ingen aktivitet er valgt, er standardrapporten CPU-utnyttelsesrapporten.
mpstat uten noe alternativ vil vise globale gjennomsnittlige aktiviteter for alle CPUer
# mpstat
mpstat med -p alternativet og «ALL» vil vise statistikk om alle CPUer en etter en fra 0.
# mpstat -P ALL
Følgende kommando vil oppgi gjennomsnittlig CPU-bruk i 4 ganger, hver etter 2 sekunder.
# mpstat -P ALL 2 4
5) Sar
Sar er et verktøy for ytelsesovervåking for samle, se og registrere ytelsesdata og kan liste opp hva et system gjør hele tiden. Sar-kommandoen kan generere rapporter og sende dem til systemadministratoren. Statistikken rapportert av sar inkluderer I / O-overføringshastigheter, personsøkeaktivitet, prosessrelaterte aktiviteter, avbrudd, nettverksaktivitet, minne- og bytteplassutnyttelse, CPU-utnyttelse, kjerneaktiviteter og TTY-statistikk, blant andre. Kjør sar uten noe alternativ og sjekk utdataene. Standard utgangslistestatistikk for hvert 10. minutt og et endelig gjennomsnitt.
# sar
Vis CPU-statistikk tre ganger med 2 sekunders intervall.
# sar 2 3
Følgende kommando viser kumulativ sanntids CPU-bruk av all CPU hver 2. sekund totalt 3 ganger.
# sar -u 2 3
Alternativet «-P ALL» viser statistikk for ALLE individuelle kjerner. Hvis systemet ditt har 4 kjerner, vil «CPU-kolonnen» inneholde tallet 0, 1, 2, 3 som indikerer de tilsvarende CPU-kjernetallene.Alternativet «2 3» viser statistikken hvert 2. sekund tre ganger.
# sar -P ALL 2 3
Alternativet «-P 2» viser statistikk for tredje kjerne hvert 2. sekund i tre ganger.
# sar -P 2 2 3
6) CoreFreq
CoreFreq er en CPU-ytelsesovervåkningsprogramvare designet for 64-biters prosessorer med arkitekturer Intel Atom, Core2, Nehalem, SandyBridge og overlegen, AMD Family. CoreFreq gir et rammeverk for å hente CPU-data med høy presisjon. Kjernemodulen, demonen og brukerlandets kommandolinjegrensesnitt (CLI) er de tre delene av Corefreq. Kjernemodulen vil ha full tilgang til verten. Det er dets ansvar å samle inn data på lavt nivå. Userland-demonen samler inn dataene. Du bør være rotbruker for å kjøre demonen. Til slutt kommer CoreFreq med et terminalgrensesnitt for å rapportere data i et hyggelig menneskelig lesbart format. Det CLI-verktøyet er en vanlig prosess og kan brukes av sluttbrukeren.
Forutsetning
i) CoreFreq bruker telleren på lavt nivå, og derfor bør du først deaktivere NMI vakthund gjennom / etc / default / grub. Rediger / etc / default / grub og legg til «nmi_watchdog = 0» -kommandolinjeargumentet og kjør deretter oppdateringsgrubben.
# vi /etc/default/grub
.................... .................... GRUB_CMDLINE_LINUX="nmi_watchdog=0" .................... ....................
# update-grub && reboot
ii) Ingen virtualisering. VM-er gir ikke tilgang til registerene som CoreFreq-driveren bruker.
Installer CoreFreq
Installer kjernemodulen med insmod
# sudo insmod corefreqk.ko
Liste CoreFreq-modulen med lsmod
# lsmod | grep corefreq corefreqk 49152 0
Utgangen av dmesg-kommandoen viser CoreFreq har blitt gjenkjent av prosessoren.
# sudo dmesg | grep CoreFreq CoreFreq: Processor Architecture CPU
Start CoreFreq-demonen
# sudo ./corefreqd