藉由 sched_ext 實作客製化 Linux CPU 排程器
"I'm also not a believer in the argument that has been used (multiple times) that the BPF scheduler would keep people from participating in scheduler development." - Linus Torvalds
Linux v6.12 引入的 sched_ext
(scx) 允許開發者藉由 eBPF,在使用者空間動態載入或抽換 CPU 排程器。本議程嘗試結合機器學習,利用 BPF map 彙整 CPU 排程相關事件資料,依據推論動態調整 time slice、CPU affinity 與 task migration。預計探討以下:
- 回顧 CFS/EEVDF
sched_ext
的創新和相關機制
- 從客製化的 FCFS/RR 排程器到機器學習,並引入負載預測機制