Scheduling at Scale: eBPF Schedulers with Sched_ext
summary
eBPF plugs into the kernel via skex ops to run custom schedulers that swap dispatch queues, set vtime slices, and call Kfuncs; a working simple example is under 200 lines and uses BPF maps, CPU masks and stru_ops. Experimental schedulers (Rustland, BPFland, layered, vdf) show real gains — one demo sustains 60 FPS while compiling a kernel — but production pain points include kernel backports, verifier quirks, testing correctness, and needing observable DSQ latency and cache/CPU metrics.
AI-written summary · about
chapters (8)
- 0:00Introduction to scheduling
- 1:38Overview of sched_ext
- 3:17BPF building blocks
- 8:51Scheduler implementation
- 14:29Existing scheduler examples
- 21:28Deployment challenges
- 24:13Testing and observability
- 26:43Future and conclusion
related talks
16mFrom Fragmentation to Integration: Enhancing sched_ext BPF Scheduler Interoperabili...
32meBPF: BPF kernel infrastructure
32meBPF Kernel Scheduling with Ghost
16mPeeR: First-Class Scheduling for Latency-Critical eBPF Applications
35mAn Introduction to eBPF - Superpowers for Networking, Observability & Security
31meBPF 101
48mInto the hive of eBPF!
50mIntroduction to eBPF
