sched_ext 调度程序和工具
sched_ext 是 Linux 内核的一项功能,可在 BPF 中实现内核线程调度器,并动态加载它们。此仓库包含各种调度器实现和支持工具。sched_ext 可实现安全、快速的调度器实现迭代,从而大大扩展了可进行实验和部署的调度策略范围;即使是在庞大、复杂的生产环境中也是如此。您可以在 wiki 中找到更多信息、博客文章和录音链接。以下是此仓库的一些亮点。
scx_layered 案例研究 具体展示了 sched_ext 的强大性和优势。- 如需高层次但全面的介绍 sched_ext (尤其是其动机),请参阅 概述文档。- 如需描述本树中随附的调度程序,请参阅 调度程序文档。- 以下视频是 scx_rustland 调度程序,它在用户空间 Rust 代码中做出了大部分调度决策,在编译内核时在 terraria 中显示了更好的 FPS。这并不意味着 scx_rustland 是一个更好的调度程序,但它确实展示了实现一个通常可用且在某些情况下可以优于默认调度程序的调度程序是多么安全和容易。sched_ext 由 6.12 版起的上游内核支持。Meta 和 Google 都全力支持 sched_ext,Meta 正在进行大规模生产部署。详细信息请参阅 #kernel-feature-status。
暂无开放 Issues,或尚未同步最近议题。