使用带有 `isolcpus` 和 `cpuset` 的内核

Ark*_*diy 5 linux cgroup

我有一个 Red Hat Enterprise Linux Server 6.9 版(圣地亚哥)(我不管理它)。在 GRUB 配置文件中,我有isolcpus=2-32(36 个核心)。我还有一个 cgroup,cpuset=2-32通过分配cgset.conf给该系统上的所有重要进程。

我的问题是:这两个设置如何相互作用?

通常,当我启动一个进程时,taskset -c 2-32所有线程都在核心 2 上结束,因为 isolcpus“从调度程序中删除核心”,正如我被告知的那样,因此没有负载平衡。

然而,观察到的 cpuset 效果是不同的 - 各种进程和线程最终位于不同的核心上。

有人可以解释一下isolcpusandtaskset命令如何产生一个结果,而isolcpuscgroups/cpusets 如何产生不同的结果吗?