Linked by Thom Holwerda on Fri 31st Aug 2007 08:39 UTC, submitted by lomax
Linux During the many threads discussing Ingo Molnar's recently merged Completely Fair Scheduler, Roman Zippel has repeatedly questioned the complexity of the new process scheduler. In a recent posting to the Linux Kernel mailing list he offered a simpler scheduler named the 'Really Fair Scheduler' saying, "as I already tried to explain previously CFS has a considerable algorithmic and computational complexity. This patch should now make it clearer, why I could so easily skip over Ingo's long explanation of all the tricks CFS uses to keep the computational overhead low - I simply don't need them."
Thread beginning with comment 267344
To read all comments associated with this story, please click here.
Ingo's reply
by Luminair on Fri 31st Aug 2007 12:22 UTC
Luminair
Member since:
2007-03-30

Ingo's reply is here: http://lkml.org/lkml/2007/8/31/97

Basically he politely shoots down the dude's work by saying that someone has already done the same stuff.

RE: Ingo's reply
by terog on Fri 31st Aug 2007 14:20 in reply to "Ingo's reply"
terog Member since:
2007-03-09

Roman Zippel's reply:

http://lkml.org/lkml/2007/8/31/126

This one is actually more interesting to read...

Edited 2007-08-31 14:21

Reply Parent Bookmark Score: 5

RE[2]: Ingo's reply
by sbergman27 on Fri 31st Aug 2007 15:41 in reply to "RE: Ingo's reply"
sbergman27 Member since:
2005-07-24

I'm not an Ingo detractor. Not by a long shot. I'm an Ingo supporter. And I'm pretty sure that the Linux kernel would not be what it is today without his excellent work.

But is he not getting a bit cocky and dismissive of other people's work? I gave him the benefit of the doubt regarding the Con Kolivas conflict.

Using the phrases "please" and "thank you" liberally is not a replacement for treating others with respect. I'm beginning to get the impression that Ingo is confusing politeness with respect.

I'm wondering if Ingo doesn't have a "slap up 'side the head" coming from Linus. Linus doesn't have a lot of patience with ego problems.

Reply Parent Bookmark Score: 1

RE[2]: Ingo's reply
by baadger on Fri 31st Aug 2007 18:16 in reply to "RE: Ingo's reply"
baadger Member since:
2006-08-29

Ever notice that Ingo Molar is always extremely polite and non-accusive?

Statements like "Did you even try to understand what I wrote?" and accusing someone else in a discussion of making "wild claims" (or any "claim" for that matter) is not a good way to look like you're not just getting stroppy and demanding.

Edited 2007-08-31 18:19

Reply Parent Bookmark Score: 2

O RLY, Mr. Molnár? (was: RE: Ingo's reply)
by meianoite on Fri 31st Aug 2007 16:45 in reply to "Ingo's reply"
meianoite Member since:
2006-04-05

Basically he politely shoots down the dude's work by saying that someone has already done the same stuff.


Great, Mr. Molnár, talk all you want about "someone has already done the same stuff"... How about looking at your own work?


Here's part of Ingo Molnár's own description of CFS (2007)(1):

"The rq->fair_clock value tracks the 'CPU time a runnable task would have fairly gotten, had it been runnable during that time'. So by using rq->fair_clock values we can accurately timestamp and measure the 'expected CPU time' a task should have gotten. All runnable tasks are sorted in the rbtree by the "rq->fair_clock - p->wait_runtime" key, and CFS picks the 'leftmost' task and sticks to it. As the system progresses forwards, newly woken tasks are put into the tree more and more to the right - slowly but surely giving a chance for every task to become the 'leftmost task' and thus get on the CPU within a deterministic amount of time."


Now, here's part of the description of Stride Scheduling (1995)(2):

"[...] A stride scheduler is based upon a virtual-time measurement that enables it to determine the process to be selected for the next time slice.

[...]

Each process is associated with a dynamic property which denotes an indicator for scheduling relative to other processes. This property is called the pass of a process. Allocations are performed by selecting the process with the currently minimal pass value. After consuming its quantum the process' pass value is advanced by an increment which is inversely proportional to the amount of tickets allocated. As a consequence, passes of processes advance with inversely proportional speed of their allocations. This increment is called a stride. To keep integer values, we multiply the inverse proportional with a large integer constant $stride_1$."

(1) http://people.redhat.com/mingo/cfs-scheduler/sched-design-CFS.txt
(2) http://wwwagss.informatik.uni-kl.de/Projekte/Squirrel/stride/node3....


Come on, Mr. Molnár, if you want to argue about deficiencies of someone else's work, do NOT point at a third party's work, point that one is a paraphrase of the other, *and* ditch both in the process, especially when you did the very same thing.

Reply Parent Bookmark Score: 5

tyrione Member since:
2005-11-21

Obviously, English is a second language by him [Ingo] and perhaps he should hire an editor to better clarify his work.

In fact, the entire community would benefit having technical writers proofread the explanations of code within the kernel.

It's bad enough that some topic is arcane, but it doesn't help when the designer can only explain it clearly in their native tongue which isn't the "accepted" language of business.

If Russian, German, French, Spanish, Portuguese and whatnot were the standard language of Linux and the authors still wrote it as a second language it only weakens their work by such poor grammar.

Edited 2007-08-31 20:30

Reply Parent Bookmark Score: 2

renox Member since:
2005-07-06

There's 'done' and 'done': Ingo Molnar shoot down the proposal because someone has already done the same work to the CFS scheduler which is already in the kernel.

Nothing to do with having some previous research on the topic done.

Reply Parent Bookmark Score: 3