对 Unix 'top' 命令中的 CPU 值感到困惑

Tef*_*Ted 11 unix central-processing-unit top

在下面的屏幕截图中,整体 CPU 被报告为 3%,但 mysqld 进程被报告为使用 57%。这是总 3% 的 57%,因此 mysqld 只使用了大约 1.5% 的 CPU?

顶部截图 http://img.skitch.com/20090620-cih33piwnnrke6aw41y9p1phwr.jpg

更新:下面的评论者要求我按“1”键并发布结果: 1 键 http://img.skitch.com/20090620-gayja43s44qtw2wkw4aq642e8c.jpg

bri*_*zil 11

57.6% 意味着 mysqld 使用 0.576 的一个 cpu。这种差异很可能是整个系统的数据收集与收集每个进程的数据之间的竞争条件。

编辑:根据您的更新,您似乎有 16 个内核。

57.5% => .575/16 = .036 = 3.6%.
Run Code Online (Sandbox Code Playgroud)

所以这就是你的 3% 的来源。

如果将所有闲置百分比相加并从 1600% 中减去,则结果也为 57.5%。