1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Two Years With Linux BFS, The Brain Fuck Scheduler

Michael Larabel

Published on 16 August 2011
Written by Michael Larabel
Page 1 of 4 - 72 Comments

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. BFS is not written to scale to systems with many processing cores, thus not making it ideal for powerful servers and workstations, and not a one-all replacement for CFS. There is also no interest in the Linux kernel development community of having multiple schedulers available in the mainline tree.

While BFS is not in the mainline Linux kernel tree, a few Linux distributions ship with a kernel that is patched for the Brain Fuck Scheduler. Among the BFS-enabled distributions are Zenwalk, PC Linux OS, and Kanotix. There is also a branch of Google's Android operating system that has BFS support, since mobile devices fit the light-NUMA target of the low-overhead scheduler well. In addition, a steady stream of Linux users are manually patching the Brain Fuck Scheduler for their own kernel on other distributions.

Kolivas continues to update his BFS scheduler patch for every major Linux kernel release since Linux 2.6.31 and are available from his Kolivas.org server. The most recent patch by Con Kolivas is from 11 August and for the Linux 3.0 scheduler with BFS v0.406, which is what is being tested in this article. For those interested in more technical details about the Brain Fuck Scheduler, Kolivas continues to maintain the BFS FAQ page.

Shortly after the release of BFS in 2009, there were Phoronix benchmarks of the BFS scheduler, which showed mixed results. There have not been benchmarks since then of this new scheduler, which should make today's results particularly interesting. In this article we're using an Intel "Sandy Bridge" system while benchmarking the latest BFS (v0.406) patch on the Linux 3.0 kernel and comparing it to the Completely Fair Scheduler as used by default in the kernel tree. Besides swapping the scheduler, this was a vanilla Linux 3.0 kernel build using an otherwise stock kernel configuration.


The BFS mascot? Found on a wall in Berlin Mitte...

The Sandy Bridge system had an Intel Core i5 2500K CPU, Sapphire Pure Black P67 Hydra motherboard, 4GB of RAM, 64GB OCZ Agility SSD, and a NVIDIA GeForce GTX 460 graphics card. The software stack was 64-bit Ubuntu 11.04, the GNOME 2.32.1 desktop, X.Org Server 1.10.1, GCC 4.5.2, and an EXT4 file-system. Making these Brain Fuck Scheduler results even more interesting is that this physical quad-core Core i5 CPU was tested with BFS and CFS when one, two, and four cores were enabled from the BIOS.

Benchmarking was done via the Phoronix Test Suite automated open-source testing infrastructure. Beyond running a variety of CPU-focused tests, the CPU usage while running several of the tests was also looked at to further compare the Brain Fuck Scheduler and Completely Fair Scheduler.

<< Previous Page
1
Latest Linux Hardware Reviews
  1. Intel Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  2. Intel 120GB 530 Series SSD Linux Performance
  3. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
  4. AMD's Windows Catalyst Driver Remains Largely Faster Than Linux Drivers
Latest Linux Articles
  1. Mesa 10.5-devel Brings Some Intel Haswell HD Graphics Changes Over Mesa 10.3
  2. NVIDIA vs. Nouveau Drivers With Linux 3.18 + Mesa 10.4-devel
  3. Is The Open-Source NVIDIA Driver Fast Enough For Steam On Linux Gaming?
  4. Linux 3.18 File-System Performance Minimally Changed But Possible Regressions
Latest Linux News
  1. There's New In-Fighting Over The Future Of Compiz
  2. GTK+ Inspector Gains More Features Ahead Of GNOME 3.16
  3. Clang 3.6 Will Hopefully Have OpenMP Support
  4. A Go Front-End Could Soon Be Landing In LLVM
  5. Linux 3.18-rc6 Released, A Worrisome Regression Remains
  6. HandBrake 0.10 Brings H.265 & VP8 Encoders
  7. Gngr: A New Web Browser Focused On Privacy
  8. Linux 3.18 Kernel: Not Much Change With Intel Haswell Performance
  9. More File-System Tests Of The Linux 3.18 Kernel
  10. Using NVIDIA's NVENC On Linux With FFmpeg
Latest Forum Discussions
  1. Roadmap to Catalyst 14.10 ?
  2. how to configure module phoromatic ?
  3. PulseAudio 6.0 Is Coming & Other Linux Audio Plans For The Future
  4. Debian Developer Resigns From The Systemd Maintainership Team
  5. Updated and Optimized Ubuntu Free Graphics Drivers
  6. Cant get working Kaveri APU - A10-7850k
  7. Script for Fan Speed Control
  8. Debian Init System Coupling Vote Results