Two Years With Linux BFS, The Brain Fuck Scheduler
This month marks the two-year anniversary of the release of BFS, the Brain Fuck Scheduler, for the Linux kernel. While BFS has not been merged into the mainline Linux kernel, the scheduler is still actively maintained by Con Kolivas and patches are updated for new kernel releases. The BFS scheduler has also reached mild success and adoption over the past two years. In this article is a fresh look at the Brain Fuck Scheduler along with a fresh round of benchmarks from the Linux 3.0 kernel.
When Con Kolivas announced the Brain Fuck Scheduler (BFS) as an alternative to the Completely Fair Scheduler (CFS) that is the default scheduler in the mainline Linux kernel, he expressed straight away that he was not aiming this patch for inclusion into the mainline kernel tree. BFS takes a much simpler design approach than CFS, which was written by Ingo Molnar and originally inspired by the CPU scheduling work of Con Kolivas years before he conceived the new scheduler. The reasoning is that Kolivas is not motivated to push it upstream and that the Brain Fuck Scheduler is designed to improve the CPU scheduling experience for desktops and systems with few-cores-or-less.