Hasty Briefsbeta

Bilingual

Infinity Scheduler Aims to Be a Better Linux Scheduler

7 hours ago
  • #Linux Kernel
  • #CPU Scheduling
  • #Open Source Development
  • Infinity Scheduler is a new Linux scheduler aiming to improve CPU scheduling behavior.
  • It is developed by Galih Tama as a replacement for the scx_flow scheduler to address limitations in the BPF-based sched_ext approach that can cause false positives under heavy load.
  • Instead of using sched_ext, it patches the mainline Linux kernel to modify CFS (Completely Fair Scheduler) and RT (Real-Time) code.
  • The core idea involves an Exponential Moving Average (EMA) to track each task's recent runtime history, adjusting time slices: CPU-bound tasks shrink to a minimum of 400µs, while interactive tasks retain full shares.
  • It includes features like shorter vslices for low-EMA wakeups and a futex-waiting bypass for immediate preemption, with RT tasks also receiving EMA treatment via queue modulation.
  • Current patches target Linux kernel versions 6.18 LTS, 7.0, and 7.1, with details available on GitHub, and potential performance benchmarks may be conducted based on interest.