Towards CPU schedulers comparison
Having my brand new hand-crafted home router (Athlon 5150-based, does routing and keeps several remote GUI apps, 3.16 kernel series), I've decided to replace stock Ubuntu 14.04 kernel with pf-kernel and to find out how this can change CPU munin charts.
So, first of all let's have a look at CPU load statistics.
There are 3 key moments:
- CPU load with CFS scheduler is slightly increasing over time, while the same with BFS is not;
- system time is much lower with BFS than with CFS;
- IRQ time is slightly higher with BFS.
Other metrics are approximately the same. So, one may conclude that BFS is OK for home-machine loads as it introduces less overhead and behaves more predictably.
The second chart loads CPU frequency data.
This chart keeps 3 key moments as well:
- CPU3 tends to have higher frequency over time with CFS, while frequency is oscillating around stable values with BFS;
- overall CPU3 frequency is slightly lower than CPU0–2 with BFS;
- average frequency over all cores (except enormous CPU3 frequency) is slightly higher with BFS than with CFS.
So one may conclude that BFS is better for home-machine loads as CPU consumes less energy.
You may try pf-kernel for your machines. To find more, proceed to pf-kernel home page.