Paraphrasing Jens Axboe:
I don't think you can compare [plugsched with the plugio framework]. Yes they are both schedulers, but that's about where the 'similarity' stops. The CPU scheduler must be really fast, overhead must be kept to a minimum. For a disk scheduler, we can affort to burn cpu cycles to increase the io performance. The extra abstraction required to fully modularize the cpu scheduler would come at a non-zero cost as well, but I bet it would have a larger impact there. I doubt you could measure the difference in the disk scheduler.
Modularization usually is done through a level of indirection (function pointers). I have a can of "indirection be gone" almost ready to spray over the plugsched framework that would reduce the overhead to zero at runtime. I'd be happy to finish that work if it makes it more palpable to integrate a plugsched framework into the kernel?
The indirection was a minor point. On modern cpus it was suggested by wli that this would not be a demonstrable hit in perormance. Having said that, I'm sure Peter would be happy for another developer. I know how tiring and lonely it can feel maintaining such a monster.
Cheers, Con
signature.asc
Description: OpenPGP digital signature