将 Linux 进程置于某些 CPU 核心上

将 Linux 进程置于某些 CPU 核心上

可能的重复:
如何在 Linux 上设置进程的处理器关联性?

现在的计算机 CPU 内部有很多核心。

我一直想知道,当我在 Linux 命令行上启动进程时,是否有办法指定该进程可能使用哪个或哪些特定核心?

例如,我可以启动一个大型 grep 任务并说“为自己使用所有 CPU2”吗?

或者我可以启动一个查找任务并说“永远不要离开 CPU3”。

或者也许我可以启动视频解码任务并说“使用 CPU1 和 CPU2 上可用的任何内容”

或者,是否没有办法做到这一点,因为不需要它,并且操作系统正在自行智能地执行此类操作(基于进程的良好级别和一般资源使用情况等)

如果你明白我的意思

答案1

你想知道的是CPU亲和力。我发现有一个很好的解释NixCraft 上的 CPU 亲和力。但请注意,正如您所说,Linux 内核确实已经做出了明智的选择。

答案2

查看taskset实用程序。应该正是您要寻找的。

相关内容