Cpu-Usage

為什麼 linux ’top’ 命令只用一個 CPU 顯示不同的 CPU 使用率值?

  • March 14, 2018

為什麼“top”命令會為只有一個 CPU 的 Linux 伺服器顯示兩個不同的值。我知道當有一個多核處理器時它可能會有所不同,但在這種情況下,我使用的是 AWS LightSail 5 美元的實例,只有一個 CPU 512 MB RAM, 1 vCPU, 20 GB SSD

在此處輸入圖像描述

在 Amazon 控制台中,它顯示 CPU 使用率沒有超過 10% 的使用率,但是應用程序已關閉。當我查看使用情況時,我發現這幾乎是 100% 的使用情況。

為什麼會發生這種情況?我應該考慮哪個值來衡量我的 VM 使用率百分比?

在 Line %Cpu(s) top中,將 CPU 使用率分為幾類:

      us, user    : time running un-niced user processes
      sy, system  : time running kernel processes
      ni, nice    : time running niced user processes
      id, idle    : time spent in the kernel idle handler
      wa, IO-wait : time waiting for I/O completion
      hi : time spent servicing hardware interrupts
      si : time spent servicing software interrupts
      st : time stolen from this vm by the hypervisor

您使用的 CPU 由所有這些值加起來組成。這意味著在這種情況下:

7.3 + 0.0 + 0.0 + 4.3 + 0.0 + 0.0 + 88.3 = 99,9

在 Amazon LightSail 中,如另一個答案中所述,“LightSail 不會讓您一直使用 vCPU 的所有功能,因此它已被限制。”

在我看來,這真的不是那麼明顯,應該有一個總 CPU 值在頂部,但遺憾的是,沒有。

您可以使用另一個名為“htop”的程序(將其安裝在伺服器上),它可以更舒適地顯示資訊,例如每個核心的總 CPU 使用率。

它看起來像這樣:

在此處輸入圖像描述

引用自:https://serverfault.com/questions/901581