4 ms·
Con Kolivas releases BFS, alternative to mainline scheduler
- electronslave 17y agoOMG! He came back! Edit: Explanation is due. Years ago, Con split from dev: http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.htm http://apcmag.com/why_i_quit_kernel_developer_con_kolivas.ht...
- MikeW 17y agoGood 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 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 17y agoWas 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 17y agoAnd it's not even an acronym, it's an initialism! http://en.wikipedia.org/wiki/Acronym_and_initialism http://en.wikipedia.org/wiki/Acronym_and_initialism
- wglb 17y agoLooks like good work. And there are those that say the kernel should be monolithic still.
- nitrogen 17y agoThis 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 17y agoIt'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.
- three14 17y agoBut any change to the scheduler is a regression for someone, more or less by definition. Do you mean that they can't change it anymore at all?
- nitrogen 17y agoI 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."
- tenzero 17y agoThis 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 17y agoGod 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 17y agosigh 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 17y agoHey, 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?
- pingswept 17y agoXKCD comic mentioned in article: http://xkcd.com/619/ http://xkcd.com/619/
- beza1e1 17y agoIs there a short description of the algorithm anywhere? I'm too lazy to read the code.
- mahmud 17y agoNot lazy, just sane.
- Hexstream 17y ago"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