![如何使用 Linux 处理器亲和性将 2 个核心专用于用户 1,将 2 个核心专用于用户 2?](https://linux22.com/image/1415183/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%20Linux%20%E5%A4%84%E7%90%86%E5%99%A8%E4%BA%B2%E5%92%8C%E6%80%A7%E5%B0%86%202%20%E4%B8%AA%E6%A0%B8%E5%BF%83%E4%B8%93%E7%94%A8%E4%BA%8E%E7%94%A8%E6%88%B7%201%EF%BC%8C%E5%B0%86%202%20%E4%B8%AA%E6%A0%B8%E5%BF%83%E4%B8%93%E7%94%A8%E4%BA%8E%E7%94%A8%E6%88%B7%202%EF%BC%9F.png)
起初我想将 2 个核心(4 个线程)专用于一个 java PID,将 2 个核心(4 个线程)专用于另一个 java PID。但是这些程序的波动性让我认为它们最终会崩溃并重新启动。我有两个用户 mc5 和 mc26。两者都在 4 个核心(8 个线程)上运行一个进程。这会导致性能问题和轻微的滞后。我想让 mc5 使用 2 个核心(线程 0、1、2、3)。我想让 mc26 使用 2 个核心(线程 4、5、6、7)。这怎么可能?有人能给我举个例子吗?
答案1
这会起作用吗?应该适用于已经运行的进程:
taskset -cp 0-3 `pid of mc5`
taskset -cp 4-7 `pid of mc26`