題 為什麼Linux中頂級的CPU使用率超過100%?


我已經看到CPU使用率超過100%。這怎麼可能?是因為我有四個CPU核心,所以100%不是真正的最大值?

此外,當一個程序執行此操作時,除了使用之外,還可以在頂部做什麼 k 命令?


59
2017-08-11 12:40


起源




答案:


AFAIK top顯示與1核心功耗相關的CPU使用率,即如果您的任務佔用200%的CPU,那麼它佔用兩個核心。


65
2017-08-11 12:49





從頂部的man-page

   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.

所以,是的,top顯示了PER核心的CPU百分比,但你可以按“我”來切換這種行為。


16
2017-08-12 10:00





是的,如果頂部的進程超過100%或頂部顯示> 1.0負載,這意味著佔用了多個核心,或者係統超額預訂。超額認購意味著要有更多的工作可以放在核心上,而不是可以管理的。

top 您還可以通過不同的參數(如已用內存)對視圖進行排序。如果您想查看可以排序的內容,請參閱幫助或手冊頁 top

您還可以查看有關進程本身的所有類型的信息,例如進程使用的虛擬或駐留內存,以及它是否正在休眠或當前正在運行,以及使用的CPU時間。

如果需要,頂部的平均負載也可以由 uptime 命令。


10
2017-08-11 13:01



如何檢查是否使用多個核心或是否超額訂閱?謝謝! - user1953384