Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Scheduling clarification: (4 Items)
   
Scheduling clarification  
I'm curious how the following situation is handled by thread scheduler...
Consider a multi-core system with thread A limited by runmask to be scheduled on core 0 only. If the thread A becomes 
ready but thread scheduler determines that core 0 is at the moment occupied with a higher priority thread B which can 
also be run on other cores, does it move thread B to continue execution on a different core which was idle or handling a
 thread with priority less than that of A to make core 0 available for thread A?
Re: Scheduling clarification  
No, we won't push thread B off core 0. Thread A will be placed in the
READY state and wait for thread B to block or drop its priority.

On Fri, Sep 18, 2009 at 08:40:52AM -0400, Oleh Derevenko wrote:
> I'm curious how the following situation is handled by thread scheduler...
> Consider a multi-core system with thread A limited by runmask to be scheduled on core 0 only. If the thread A becomes 
ready but thread scheduler determines that core 0 is at the moment occupied with a higher priority thread B which can 
also be run on other cores, does it move thread B to continue execution on a different core which was idle or handling a
 thread with priority less than that of A to make core 0 available for thread A?
> 
> 
> 
> _______________________________________________
> 
> OSTech
> http://community.qnx.com/sf/go/post38260
> 

-- 
Brian Stecher (bstecher@qnx.com)        QNX Software Systems
phone: +1 (613) 591-0931 (voice)        175 Terence Matthews Cr.
       +1 (613) 591-3579 (fax)          Kanata, Ontario, Canada K2M 1W8
Re: Scheduling clarification  
Would not it be interesting to plan this as an enhancement for future OS releases?

> No, we won't push thread B off core 0. Thread A will be placed in the
> READY state and wait for thread B to block or drop its priority.
> 
> On Fri, Sep 18, 2009 at 08:40:52AM -0400, Oleh Derevenko wrote:
> > I'm curious how the following situation is handled by thread scheduler...
> > Consider a multi-core system with thread A limited by runmask to be 
> scheduled on core 0 only. If the thread A becomes ready but thread scheduler 
> determines that core 0 is at the moment occupied with a higher priority thread
>  B which can also be run on other cores, does it move thread B to continue 
> execution on a different core which was idle or handling a thread with 
> priority less than that of A to make core 0 available for thread A?
> > 
> > 
> > 
Re: Scheduling clarification  
I'm not sure that it's a good idea - migrating a thread is not a cheap
thing to do.


On Fri, Sep 18, 2009 at 09:37:05AM -0400, Oleh Derevenko wrote:
> Would not it be interesting to plan this as an enhancement for future OS releases?
> 
> > No, we won't push thread B off core 0. Thread A will be placed in the
> > READY state and wait for thread B to block or drop its priority.
> > 
> > On Fri, Sep 18, 2009 at 08:40:52AM -0400, Oleh Derevenko wrote:
> > > I'm curious how the following situation is handled by thread scheduler...
> > > Consider a multi-core system with thread A limited by runmask to be 
> > scheduled on core 0 only. If the thread A becomes ready but thread scheduler 
> > determines that core 0 is at the moment occupied with a higher priority thread
> >  B which can also be run on other cores, does it move thread B to continue 
> > execution on a different core which was idle or handling a thread with 
> > priority less than that of A to make core 0 available for thread A?
> > > 
> > > 
> > > 
> 
> 
> 
> 
> _______________________________________________
> 
> OSTech
> http://community.qnx.com/sf/go/post38271
> 

-- 
Brian Stecher (bstecher@qnx.com)        QNX Software Systems
phone: +1 (613) 591-0931 (voice)        175 Terence Matthews Cr.
       +1 (613) 591-3579 (fax)          Kanata, Ontario, Canada K2M 1W8