eBPF Kernel Scheduling with Ghost
summary
Ghost runs as a sched class below CFS, sends kernel messages to an agent and accepts agent transactions; BPF programs embed in the agent and act with equivalent privileges. A BPF-only scheduler (Biff) uses a global FIFO queue, CPU-indexed array maps and a dense per-task SW data array, plus helpers like run_gtid and wake_agent to run tasks without context switches. Work targets a full CFS-in-BPF, measuring the "ghost tax," adding priority-queue map types, and keeping sequence numbers for safe async interactions.
AI-written summary · about
chapters (9)
- 0:00Introduction to ghost
- 1:47Ghost architecture basics
- 3:10Integrating BPF with ghost
- 6:06BPF-only scheduling
- 8:32Biff: A simple BPF scheduler
- 13:04Future goals and roadmaps
- 15:31Discussion on infrastructure
- 18:48Extensibility and design
- 22:51Q&A and closing
related talks
30mScheduling at Scale: eBPF Schedulers with Sched_ext
50mIntroduction to eBPF
32meBPF: BPF kernel infrastructure
36meBPF for Runtime Security
35mAn Introduction to eBPF - Superpowers for Networking, Observability & Security
39meBPF Superpowers for Go programmers
16mPeeR: First-Class Scheduling for Latency-Critical eBPF Applications
16mWhy Everyone Should Care About eBPF
