While reading up on this I came across this mail: http://lkml.org/lkml/2008/10/31/52 (though I forget exactly how), which made me curious what these 'pfair' algorithms were. I am posting here a link to a paper which explains the entire pfair/erfair family of scheduling algorithms in some depth, as it's really fascinating - it also makes me wonder why Dario is implementing EDF (Earliest Deadline First) despite its poor SMP properties rather than, say, the ERFair variant of PD2, which not only is more optimal in its scheduling but also has a much simpler admission test. (I do admit that 'simplicity of concept' may well be a valid argument here, but simplicity at the cost of usefulness isn't likely to go over well).
Posted Aug 2, 2010 14:22 UTC (Mon) by Arakageeta (guest, #60609)
[Link]
Unfortunately, preemption and CPU migration overheads limits pfair performance. Global earliest deadline scheduling is, practically speaking, the best algorithm for soft realtime scheduling.
BTW, the research group that published the paper you linked also maintains a Linux testbed (Litmus^RT) to test real-time scheduling (pfair, various deadline schedulers) and synchronization algorithms: http://www.cs.unc.edu/~anderson/litmus-rt/