Saya menjalankan proses di server Ubuntu 4 inti. Namun, top
perintah menunjukkan bahwa penggunaan CPU adalah 799% setiap saat.
Bagaimana ini bisa terjadi? Saya tahu untuk CPU multi-core, diharapkan penggunaan CPU lebih dari 100%, tetapi 799% adalah nilai yang sangat tinggi.
Adakah yang bisa menjelaskan kepada saya mengapa dan kapan ini bisa terjadi?
Edit:
Sesuai saran Gregory MOUSSAT, menggunakan htop saya mendapat berikut:
linux
ubuntu
multi-core
top
Arpss
sumber
sumber
Jawaban:
Skala yang digunakan oleh
top
adalah 100% ketika sebuah inti sepenuhnya digunakan. Atau ketika satu inti adalah 20% dan yang kedua adalah 80%. Ini menyebabkan hasil yang aneh pada komputer multicore karena dengan mudah dapat melebihi 100%.Jika Anda memiliki 8 core, maka
top
dapat ditampilkan dari 0% (sistem idle) hingga 800% (daya penuh).Program Anda hanya menggunakan 4 core Anda dengan hyperthreading (jadi 8 core virtual) pada kapasitas maksimum. Jadi top memberi Anda hampir 8 x 100% = 800%.
Anda tidak bisa secara eksplisit memberi tahu JVM untuk menggunakan satu utas, ia akan menggunakan banyak utas untuk melakukan tugasnya, bahkan jika Anda hanya menggunakan satu utas dalam aplikasi Anda.
Anda dapat menggunakan
htop
utilitas sebagaitop
alternatif yang lebih baik . Anda akan melihat program Anda menggunakan semua 8 core.sumber
htop