首页 > 解决方案 > Linux (Ubuntu) 上的 CPU 使用率下降

问题描述

在此处输入图像描述

我使用的是 AWS c5.4xlarge 实例,它有 16 个 vCPU,并运行一个 10 进程的 python 程序。然而,如图所示,仅 10 秒,每个进程的 CPU 使用率逐渐下降到 10%。16 个 vCPU 实例的总 CPU 使用率仅为 6% 左右。

我减少了进程的数量,但是每个进程的 CPU 使用率仍然很低。在我自己的 macOS 上一切正常。

在此处输入图像描述

这有什么问题?

标签: amazon-web-servicesubuntutensorflowmultiprocessing

解决方案


好的,我找到了答案。这是关于处理器亲和性的。对于 Linux 初学者: https ://en.wikipedia.org/wiki/Processor_affinity

在 Linux 中,您可以将 CPU 分配给 Linux 终端中的特定进程:

$ taskset -cp CPU_ID PID

例如:

$ taskset -cp 0-1 1000

将分配 CPU 0 和 1 来处理 ID 为 1000 的进程。

您可以通过使用找到 PID

$ top

在您的终端中。


推荐阅读