DragonFly kernel List (threaded) for 2008-07
Re: Proportional share scheduler
: I have implemented a O(1) proportional share userland scheduler, it is based on Virtual-Time Round Robin (VTRR)Algorithm. I modified the implementation to make it O(1) for SMP. Some of the important points related to the implementation are as follows:
:1. Instead of single run queue in case of current scheduler, i have separate run queues per processor.
:1. How do you guys test performance of the current scheduler, are there any standard benchmarks that i should run to give a fair comparison of the two schedulers.
:2. I have to design Command Line interface for this scheduler so that you can specify the share at the time of executing the command. I need some suggestions on this. If you can tell some of the possible commands that you would like to have, that would be helpful. for example
: "pshare -s 20 top" : this command will assign 20% cpu to top.
: Currently using the nice command does affect the share of the process.
:3. Any general suggestions that will make this scheduler good enough to be a part of code base would be really helpful.
: Looking forward to your replies.
This sounds pretty cool. I didn't see any references to the code,
could you make it available?
From your description I take it you just used the pluggable scheduler
API which means we should be able to commit it without worrying too
much about any potential destabilization of the system. That will
expose it to a wider group of people for testing.
Performance is always in the eye of the beholder when it comes to
schedulers. More important is seeing how well it scales when there
are many threads running in the system, and how well unrelated
interactive performance fares in the face of many threads running in