The extensible scheduler class ("sched_ext") allows the loading of a custom CPU scheduler into the kernel as a set of BPF functions; it was merged for the 6.12 kernel release. Since then, sched_ext has enabled a wide range of experimentation with scheduling algorithms. At the 2025 Open Source Summit North America, Ching-Chun ("Jim") Huang presented work that has been done to apply (local) machine learning to the problem of scheduling processes on complex systems.
可扩展调度器类(“sched_ext”)允许以一组 BPF 函数的形式将自定义 CPU 调度器加载到内核中;该功能已在 Linux 6.12 版本中合并。从那以后,sched_ext 使得调度算法的广泛实验成为可能。在 2025 年的北美开源峰会上,Ching-Chun(“Jim”)Huang 展示了将(本地)机器学习应用于复杂系统中进程调度问题的相关工作。
Huang started with a timeline of Linux scheduler development, beginning with the adoption of the completely fair scheduler (CFS) in 2007. Various efforts were made to write alternatives to CFS for specific use cases, notably the 2009 submission of BFS, and the 2016 MuQSS submission, both from Con Kolivas. In 2023, the EEVDF scheduler showed up as an enhancement to, and eventual replacement for, CFS. The following year, finally, saw the merging of sched_ext, after some extensive discussion.
Huang 以 Linux 调度器的发展时间线为起点,从 2007 年引入完全公平调度器(CFS)开始。社区曾多次尝试为特定用途编写 CFS 的替代方案,尤其是 Con Kolivas 提交的 BFS(2009 年)和 MuQSS(2016 年)。到了 2023 年,EEVDF 调度器作为对 CFS 的增强出现,并最终取而代之。接下来的一年,经过广泛讨论后,sched_ext 终于被合并进主线。
In other words, he said, it took 17 years from the beginning of the CFS era to get to the point where an extensible scheduler was added to Linux. That period reflects a long-held opinion that one scheduler could be optimal for all situations. This position was clearly expressed by Linus Torvalds in 2007:
换句话说,他表示,从 CFS 时代开始到 Linux 拥有可扩展调度器的那一刻,花了整整 17 年。这段时期反映了一个长期存在的观点:一个调度器可以适用于所有场景。Linus Torvalds 曾在 2007 年明确表达了这种立场:
The arguments that "servers" have a different profile than "desktop" is pure and utter garbage, and is perpetuated by people who don't know what they are talking about. The whole notion of "server" and "desktop" scheduling being d

最低0.47元/天 解锁文章
598

被折叠的 条评论
为什么被折叠?



