BFS Scheduler Updated For The Linux 4.3 Kernel
Con Kolivas has released the BFS scheduler v0.465 with support for the Linux 4.3 kernel.
It's been a while since last having anything to report on BFS while this week he released a new version that seems primarily just about adding Linux 4.3 kernel compatibility. This is significant as he didn't end up releasing a BFS update for Linux 4.2.
The BFS Linux 4.3 patch can be found from this directory.
It's been a while since last having anything to report on BFS while this week he released a new version that seems primarily just about adding Linux 4.3 kernel compatibility. This is significant as he didn't end up releasing a BFS update for Linux 4.2.
The BFS Linux 4.3 patch can be found from this directory.
The Brain Fuck Scheduler v0.465 by Con Kolivas.
A single shared runqueue O(n) strict fairness earliest deadline first design.
Excellent throughput and latency for 1 to many CPUs on desktop and server commodity hardware. Not recommended for 4096 cpus.
Scalability is optimal when your workload is equal to the number of CPUs on bfs. ie you should ONLY do make -j4 on quad core, -j2 on dual core and so on.
Features SCHED_IDLEPRIO and SCHED_ISO scheduling policies as well. You do NOT need to use these policies for good performance, they are purely optional for even better performance in extreme conditions.
To run something idleprio, use schedtool like so:
schedtool -D -e make -j4
To run something isoprio, use schedtool like so:
schedtool -I -e amarok
Includes configurable SMT-nice support for better nice level and scheduling policy support across SMT (aka hyperthread) sibling CPUs.
Includes accurate sub-tick accounting of tasks so userspace reported cpu usage may be very different if you have very short lived tasks.
-ck
10 Comments