Cara menemukan Proses mana yang menyebabkan penggunaan CPU Tinggi

30

Apakah ada cara untuk mengetahui dari terminal proses mana yang menyebabkan Penggunaan CPU tinggi?

Ini juga akan berguna untuk memesan proses dalam urutan menurun Penggunaan cpu

Gautam
sumber

Jawaban:

23

topakan menampilkan apa yang menggunakan CPU Anda. Jika Anda telah menginstalnya, htopmemungkinkan Anda untuk mengontrol dengan lebih baik, termasuk pemfilteran menurut — dalam kasus Anda — CPU

jasonwryan
sumber
4
Top sering kurang bermanfaat. Pertama karena proses sering berfluktuasi - itu tidak biasa untuk melihat proses yang benar-benar menempati CPU sesekali berkedip ke 0% di atas, dan jika Anda memiliki beberapa proses intensif berjalan mereka dapat bergantian, bergantian menggunakan 100% sementara yang lain menggunakan 0% , sehingga sulit dibaca. Juga, kadang-kadang angkanya hanya aneh - misalnya saat ini atasan saya melaporkan bahwa semua proses individu menggunakan 0% cpu, tetapi totalnya adalah 52% - jadi yang mana yang melakukannya?
Benubird
29
ps -eo pcpu,pid,user,args | sort -k1 -r -n | head -10

Bagi saya, tunjukkan 10 CPU teratas menggunakan utas, diurutkan secara numerik

chosig
sumber
1
Terbalik secara leksikografis, 8% akan menyortir di atas 78%
cherdt
3
Saya akan merekomendasikan menambahkan -n untuk disortir. Ini mengurutkan nilai-nilai secara numerik alih-alih secara leksikal. ( ss64.com/bash/sort.html )
Simon Zyx
4

Selain psdan topperintah, Anda juga dapat menjalankan vmstatuntuk mencari tahu apa yang terjadi dalam hal penggunaan CPU, memori pada sistem, yaitu:

vmstat 1 100

Dengan yang di atas, Anda mendapatkan 100 sampel per detik dari berbagai statistik. Ketika kolom ratau bmemiliki nomor (lebih tinggi = lebih banyak sumber daya yang digunakan) ada skrip yang memblokir. radalah CPU, bumumnya IO memblokir seperti disk atau jaringan.

Contoh output:

$ vmstat 1 100
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 288700  17592 1920048    0    0  4482  3297   47  155  8  2 78 12  0
 0  0      0 268420  17904 1920584    0    0   788    36 4095 4759 11  3 85  1  0
 0  0      0 269916  17940 1920868    0    0   108   560 6969 7280 11  2 86  1  1
 3  0      0 267684  18196 1921304    0    0   256     0 5934 6094  9  2 90  0  0
 0  0      0 257800  18196 1921528    0    0     0     0 5412 5508 10  1 89  0  1
 1  0      0 257368  18196 1922028    0    0     0     0 5852 6046  9  1 89  0  1
 0  0      0 256872  18200 1922236    0    0     0     0 5345 5566  9  1 90  0  0
 0  0      0 256688  18208 1922292    0    0     0  1788 5388 5602  7  2 90  1  1
 0  0      0 256520  18208 1922684    0    0     0     0 5387 5557  8  1 91  0  0
 1  0      0 255788  18208 1923024    0    0     0     0 4992 5363 10  1 89  0  1
 1  0      0 255392  18208 1923456    0    0     0     0 5027 5145 13  1 86  0  0
 0  0      0 254980  18208 1923792    0    0     0     0 5042 5082 21  1 77  0  1
 0  0      0 254452  18216 1924092    0    0     0  1848 5481 5695  7  1 91  1  1
 0  0      0 254416  18216 1924268    0    0     0     0 4947 5250  7  1 92  0  0
 1  0      0 253732  18216 1924616    0    0     0     0 5180 5383  8  2 90  0  1
 0  0      0 253584  18216 1924912    0    0    12     0 4464 4623  8  1 91  0  0
 0  0      0 243496  18216 1925224    0    0     0     0 5507 5700  9  1 90  0  1
 0  0      0 243008  18224 1925504    0    0     0  1356 5070 5345  8  1 90  0  1
 1  0      0 243220  18228 1925676    0    0     0     0 6241 6533 11  2 87  0  0
radtek
sumber
2

Anda mungkin dapat menggunakan ps xo pid,cmd --sort=%cmd | tail -1, tetapi topakan ditampilkan secara real time.

Arcege
sumber
2

" htop " mirip dengan bagian atas, tetapi memiliki tampilan "grafis berbasis teks berwarna" dari CPU Anda, dan juga menampilkan struktur pohon untuk diproses, sehingga Anda tahu suatu proses memiliki anak dan berapa banyak.

Ini juga menampilkan daya baterai laptop dan apakah itu sedang mengisi - saya tidak tahu itu sebelumnya!

KolonUK
sumber