Merged last week for the Linux 7.2 kernel were all of the sched_ext changes for this extensible scheduler support that allows loading BPF programs from user-space for handling scheduling tasks. Linux 7.2 continues building out sched_ext’s sub-scheduler support.
上周合并到 Linux 7.2 内核中的,是所有与该可扩展调度器支持相关的 sched_ext 更改,该功能允许从用户空间加载 BPF 程序来处理调度任务。Linux 7.2 继续完善 sched_ext 的子调度器支持。
The sched_ext sub-scheduler support will allow for multiple scheduler instances to be attached to the cgroup hierarchy for dealing with different workloads on the system. This sub-scheduler support could become extremely valuable for multi-tenant platforms and heterogeneous workload environments.
sched_ext 的子调度器支持将允许将多个调度器实例附加到 cgroup 层次结构中,以处理系统上的不同工作负载。对于多租户平台和异构工作负载环境而言,这种子调度器支持将具有极高的价值。
With Linux 7.2 more of the infrastructure for this sub-scheduler support has been established along with other improvements, as noted in the pull request:
正如拉取请求中所述,Linux 7.2 不仅建立了更多支持子调度器的基础架构,还进行了其他改进:
"Most of this continues the in-development sub-scheduler support, which lets a root BPF scheduler delegate to nested sub-schedulers. The dispatch-path building blocks landed in 7.1. A follow-up patchset in development will complete enqueue-path support for hierarchical scheduling."
“其中大部分工作延续了正在开发的子调度器支持,该功能允许根 BPF 调度器将任务委托给嵌套的子调度器。调度路径构建模块已在 7.1 版本中合并。目前正在开发的后续补丁集将完成分层调度所需的入队路径支持。”
The sub-scheduler work merged for Linux 7.2 include Topological CPU IDs (CIDs), cmask infrastructure, BPF arena integration that the sub-scheduler support is built on, and reworking scx_qmap to exercise the new arena and CID interfaces.
合并到 Linux 7.2 中的子调度器相关工作包括:拓扑 CPU ID(CID)、cmask 基础设施、作为子调度器支持基础的 BPF arena集成,以及对 scx_qmap 的重构以测试新的arena 和 CID 接口。