每个 CPU 核心是否都拥有 CFS 的红黑树?

Does every single CPU core own a red-black tree for CFS?

CFS 调度器使用红黑锁来保存要调度的进程,不知道是全局树还是一树一CPU核?我认为后者效率更高,但我找不到任何证据。

每个 CPU 组(结构 sched_group)有一个 CFS 运行队列(实现为红黑树)。每个 CPU 组在 SMP 模式(对称多处理)中包含一个物理 CPU,因此每个 CPU.

有一个 CFS 运行队列

您可以看到关于这些运行队列的一些信息,对于每个 CPU:cfs_rq[0]、cfs_rq[1] 等,通过显示 /proc/sched_debug(如果你的内核是用 CONFIG_SCHED_DEBUG).

编译的

sched-domains.txt and in sched-design-CFS.txt

中的一些细节