Mengapa penggunaan CPU dilaporkan oleh teratas di Linux lebih dari 100%?

60

Saya telah melihat penggunaan CPU lebih dari 100%. Bagaimana ini mungkin? Apakah karena saya memiliki empat core CPU, jadi 100% tidak benar-benar maks?

Juga, ketika sebuah program melakukan ini, apa lagi yang bisa saya lakukan di atas selain menggunakan kperintah?

tony_sid
sumber

Jawaban:

66

AFAIK atas menunjukkan penggunaan CPU dalam kaitannya dengan kekuatan 1 core, yaitu jika tugas Anda membutuhkan 200% CPU maka itu menempati dua core.

kecepatanette
sumber
17

Dari halaman man-top

   k: %CPU  --  CPU usage
  The task's share of the elapsed  CPU  time  since  the  last  screen
  update,  expressed as a percentage of total CPU time.  In a true SMP
  environment, if 'Irix mode' is Off, top will operate  in  number  of
  CPUs.  You toggle 'Irix/Solaris' modes with the 'I' interactive com-
  mand.

Jadi, ya, atas menunjukkan persentase CPU PER inti, tetapi Anda dapat beralih perilaku ini dengan menekan 'I'.

IanH
sumber
10

Ya, jika suatu proses di atas melampaui 100% atau atas menunjukkan beban> 1.0, ini berarti lebih dari satu inti terisi, atau sistem kelebihan permintaan. Berlangganan berlebih berarti bahwa ada lebih banyak pekerjaan yang harus dimasukkan ke inti daripada dikelola secara fisik.

Di dalam topAnda juga dapat mengurutkan tampilan dengan parameter yang berbeda (seperti memori yang digunakan). Jika Anda ingin melihat apa yang dapat Anda sortir, lihat halaman bantuan atau manual top.

Anda juga dapat melihat semua jenis informasi tentang proses itu sendiri, seperti memori Virtual atau penduduk yang digunakan oleh proses dan jika sedang tidur atau sedang berjalan, serta waktu cpu yang digunakan.

Rata-rata beban di atas, jika perlu, juga dapat dilihat oleh uptimeperintah.

private_meta
sumber
4
Bagaimana saya dapat memeriksa apakah menggunakan lebih dari satu inti atau jika kelebihan langganan? Terima kasih!
user1953384