[LITMUS^RT] high miss ratio for low task utilization

Björn Brandenburg bbb at mpi-sws.org
Fri Nov 21 17:16:20 CET 2014


> On 21.11.2014, at 16:29, jp walters <mailinglistjp39 at gmail.com> wrote:

Just FYI, let me explain what these mean. 

> 
> 1) There are hundreds of lines like the following (758 to be exact, over a 10 second run):
> (rtspin/3181:170) scheduled_on = NO_CPU

That just means that the task is no longer scheduled. That's expected when jobs complete. 

> 
> 2) I see roughly 500 lines like the following (the CPU number varies):
> (rtspin/3180:503) linking to local CPU 2 to avoid IPI

That's an optimization to avoid IPIs when local wakeups are possible. When a task resumes on an idle CPU, why go off and schedule it elsewhere? This is generally a good idea, but you can turn it off in the config. 

> 
> 3) On the VM only, I see about 170 instances of the following:
> [gsnedf_get_nearest_available_cpu at litmus/sched_gsn_edf.c:275]: Could not find an available CPU close to P4

I think that's just Glenn's cache-aware heuristic figuring out that no CPU with a shared cache is available to dispatch the task on right now, so another CPU needs to be picked. That's unavoidable under global scheduling some times. 

- Björn 



More information about the litmus-dev mailing list