
Con Kolivas releases BFS, alternative to mainline scheduler - jtgeibel
http://ck.kolivas.org/patches/bfs/bfs-faq.txt
======
pingswept
XKCD comic mentioned in article: <http://xkcd.com/619/>

------
tenzero
This is awesome, Con may have battled with the Kernel Devs in the past,
however his focus on improving scheduling for desktop Linux is commendable.

I for one would like to see a module or kernel for Ubuntu Jaunty that we can
install from apt to play and test this baby.

D.

~~~
blasdel
God damn do I hope nobody distributes a build of this for ubuntards to use!

Con's original scheduler had no chance of becoming the vanilla scheduler, as
it was in no way general purpose, had a number of regressions, and he was a
dick about the whole thing (in a community of assholes!). He was also
insistent on making the scheduler modular, something that Linus and his
lieutenants rightly refused outright. This new scheduler seems to amplify all
the bad qualities of his last one.

Something I found quite distasteful in the CFS battle was the way he gathered
a noisy following of clueless newbies/tweakers using his kernel that made it
very hard to have any honest discussion of the matter. Repeating that again
with a much larger and more adolescent crowd of Ubuntu users would be really
annoying.

~~~
_sh
_sigh_

What's with the attitude? A lot of people use Ubuntu, why not have a scheduler
that caters to their needs? Your sneering at 'ubuntards' is just petty.

~~~
blasdel
Hey, I use Ubuntu for my desktop at work, and in the past have done
substantial deployments of it to managed end-user desktops. It's not _beneath
me_ or anything.

I'm sneering at a particular subset of Ubuntu users -- the entire userbase of
ubuntuforums.org, the Digg/Reddit/Lifehacker "top ten ways to..." readers.
They are the "Power Users" of desktop Linux -- they have no clue how anything
works nor the facility to learn, but they sure are earnest and they love to
evangelize! They'll seize any opportunity to apply their cargo-cult knowledge
to help you with the problems they think you have.

In past generations these people (largely adolescents) would have been know-
nothing partisan tweakers of Windows, Classic Mac OS, BeOS, Amiga, or any
number of 8-bit home computer platforms. For now Linux is the cool thing to
wank over -- compiz helped a lot with that. A couple years ago it looked like
a lot of them were defecting to the Hackintosh community -- does anyone know
if that trend held up numbers-wise?

~~~
FooBarWidget
Why are you calling these people "Ubuntards"? I don't know about Digg or
Lifehacker but the vast majority of Linux people on Reddit despise Ubuntu and
use Arch instead.

~~~
javert
can anyone confirm this comment with some data, or just anecdotally? I am an
arch user, but don't use reddit, and this claim sort of worries me.

~~~
blasdel
I know that <http://www.reddit.com/user/dons> is constantly evangelizing
Haskell and Arch on reddit, to the point where he's self-parodying. He's also
single-handedly responsible for there being 1314 (!) haskell packages in Arch.

At least Arch gives the tweakers a bit more rope with which to form either a
noose or a lasso.

------
MikeW
Good to see Con back. But three letter acronyms have too many collisions and
this is one of those cases.

As soon as I saw the title of this post, I was instantly reminded of BFS - the
Be File System <http://en.wikipedia.org/wiki/Be_File_System>

Although in this case it's a Kernel scheduler rather than a Kernel mode
Filesystem driver (even though Linux already has kernel module named bfs -
Boot File System!) - indeed a TLA may have been a poor choice for a really
useful project!

~~~
ekiru
Was your use of an acronym for three letter acronym that is ambiguous and
could refer to two letter acronyms, three letter acronyms, or even three-
hundred letter acronyms intentional?

~~~
ZeroGravitas
And it's not even an acronym, it's an initialism!

<http://en.wikipedia.org/wiki/Acronym_and_initialism>

------
nitrogen
This is very exciting. I use Linux on my desktop, laptop, servers, and
embedded devices. I was getting kind of tired of the latency tradeoffs made to
improve throughput. The kernel developers are really good at what they do, but
like most geeks, sometimes they need a virtual kick in the head to realize
that there might be a better way to do something. I'll be trying out his new
scheduler as soon as I get a chance to compile a new kernel. I hope it works
with the realtime patches.

~~~
blasdel
It's not so much that the kernel devs are actively making "latency tradeoffs"
-- it's that they _absolutely can't get away with regressions_

It would be completely untenable if the corporate users (who are in the vast
majority by every metric) ended up either not upgrading or using a fork that
reverts the changes.

~~~
nitrogen
I suppose I see using a "one size fits all" scheduler as inherently full of
tradeoffs between desktop, realtime, server, and 4096-core-compute-system
requirements. IMO distributions and kernel hackers should be able to choose a
scheduler that is optimal for their target audience. RHEL would probably stick
with CFS, but Ubuntu Studio could use something more latency-oriented, like
BFS.

Maybe if CK keeps bringing up the issue, eventually someone will figure out an
optimal way of measuring perceived latency that will prove or disprove the
anecdotes given by CK's "followers."

------
beza1e1
Is there a short description of the algorithm anywhere? I'm too lazy to read
the code.

~~~
mahmud
Not lazy, just sane.

------
Hexstream
"With a truckload of help from William Lee Irwin III (who wrote the main
architecture) I posted a pluggable CPU scheduler framework that would allow
you to build into the kernel as many of multiple CPU schedulers as you like
and choose at boot time which one to run. I planned to extend that to runtime
selection as well. This is much like the modular pluggable I/O scheduler
framework that Linux kernel currently has. It was flat out refused by both
Linus and Ingo (who is the CPU scheduler maintainer) as leading to
specialisation of CPU schedulers and they both preferred there to be one CPU
scheduler that was good at everything. I guess you can say the CPU scheduler
is a steamroller that we as desktop users use to crack nuts with, and they
didn't want us to build a nutcracker into the kernel."

o_o

~~~
jacquesm
It looks like HN is 800K compliant.

Congratulations.

~~~
Hexstream
???

------
wglb
Looks like good work.

And there are those that say the kernel should be monolithic still.

------
electronslave
OMG! He came back!

Edit: Explanation is due. Years ago, Con split from dev:

[http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.ht...](http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.htm)

