为什么“top”命令显示 CPU 使用率为 799%?

Arp*_*sss 53 linux multi-core top ubuntu

我正在 4 核 Ubuntu 服务器中运行一个进程。但是,top命令显示 CPU 使用率始终为 799%。

这怎么可能?我知道对于多核 CPU,预计 CPU 使用率会超过 100%,但 799% 是一个非常高的值。

任何人都可以向我解释为什么以及何时会发生这种情况?

编辑:

根据 Gregory MOUSSAT 的建议,使用 htop 我得到了以下信息:

在此处输入图片说明

Gre*_*SAT 68

top当一个核心被完全使用时,使用的比例是 100%。或者当一个内核为 20%,第二个内核为 80% 时。这会在多核计算机上导致奇怪的结果,因为它很容易超过 100%。
如果你有 8 个内核,那么top可以显示从 0%(空闲系统)到 800%(全功率)。

您的程序只是在最大容量下使用带有超线程的 4 个内核(即 8 个虚拟内核)。所以 top 给你将近 8 x 100% = 800%。

您不能明确告诉 JVM 使用单个线程,它会使用多个线程来完成它的工作,即使您在应用程序中只使用一个线程。

您可以使用该htop实用程序作为更好的top选择。您将看到您的程序使用所有 8 个内核。

  • _所有冰雹`htop`_ (4认同)