Re: Scheduling behaviour of 23-rc4-rt1 on my intel centrino Duo.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daren,

> 1) How are you determining which CPUs these threads spend their time on?

The hourglass test's  stores the execution trace . The trace is
generated as the threads are run , each time the thread detects a gap
in the execution, it records a trace , which includes start time and
end time of the continuous block of  CPU time that a thread received.
  output looks something like this
tracerec: 3 4569.581302 4669.572704 99.991402 400.007546
tracerec: 1 4669.581304 4769.572370 99.991066 400.007679
tracerec: 2 4769.581030 4869.572168 99.991138 400.007727
tracerec: 4 4869.580624 4969.571912 99.991288 400.007546
 (columns: thread id , strat time and end time of gap free time of
CPU, duration of the interval, last column shows the time it has taken
from the end of the previous schedule of the thread)
The values are plotted and the graph is attached.
It can be noted that the thread 0 runs all the time and the thread 1-5
gets time equal slices. Hence it can be seen that thread 0 is hogging
a cpu completely and thread 1-5 are hogging the other cpu.

> 2) RTHIGH doesn't do anything for us.  What is the value of the SCHED_FIFO
> priority those threads run at?  Is it the same for every one?

All the threads are running at an RT priority of 97 (maxrt prio - 2).
code:

 max_realtime_pri = sched_get_priority_max (SCHED_RR);

and

case RTHIGH:
    param->sched_priority = max_realtime_pri - 2;

> Note that depending on exactly what those threads do (I am unfamiliar with the
> hourglass testcase) it isn't unreasonable for them to all run on the same CPU
> if their runnable/sleeping states happen to line up just right.  It is also
> very possible that they bounce around from CPU to CPU in rapid succession if
> the runnable/sleeping windows overlap in exactly the wrong way :-)
>
All the thread does is it hogs the CPU whenever it can.I have also
attached the test result and the graph that has run for 10s. Graph
basically shows the context switches that has happened between the
thread 1-5 (round robin).Thread 0 does not record any context switch
as it runs fully
thread 0 recorded 10.039664 seconds (99.999746 %)


-- 
Thanks
   Giri

Attachment: hourglass.out
Description: Binary data

Attachment: hourglass.png
Description: PNG image


[Index of Archives]     [RT Stable]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux