Re: [Lse-tech] Re: Real Time Runqueue

Andi Kleen
2001-11-19T16:30:52Z

On Fri, Nov 16, 2001 at 04:32:24PM -0800, Mike Kravetz wrote:
> The reason I ask is that we went through the pains of a separate
> realtime RQ in our MQ scheduler. And yes, it does hurt the common
> case, not to mention the extra/complex code paths. I was hoping
> that someone in the know could enlighten us as to how RT semantics
> apply to SMP systems. If the semantics I suggest above are required,
> then it implies support must be added to any possible future
> scheduler implementations.

It seems a lot of applications/APIs do not care about global RT semantics,
but about RT semantics for groups of threads or processes (e.g. java
or ada applications). Linux currently simulates this only for root
and with a global runqueue. I don't think it makes too much sense to have
an global rt queue on a multi processor system, but there should be some
way to define "scheduling groups" where rt semantics are followed inside.
Such a scheduling group could be a clone flag or default to CLONE_VM for
example for compatibility. A scheduling group would also make it possible
to support simple rt semantics for thread groups as non root. Then one
could run a rt queue per scheduling group, and simulate global rt run queue
or per cpu rt run queue as needed by appropiate setup.

Comments?

-Andi