[LITMUS^RT] running rtspin and calculate deadline miss ratio? -- Sisu

Björn Brandenburg bbb at mpi-sws.org
Thu Apr 18 19:46:24 CEST 2013


On Apr 17, 2013, at 6:59 PM, Sisu Xi <xisisu at gmail.com> wrote:

> Also, wouldn't tracing all these information cause lots of overhead when the system is running? thus interfere with the real-time task?
> 
> I am thinking maybe we can use the base_task to do this. the process is like this:
> 
> 1. first pre-calculate a fixed amount of CPU intensive workload on a particular machine, which consumes around 1ms
> 2. allocate a large enough array in base_task to record the job completion time.
> 3. wrap it with a for loop. parse the wcet to base_task, and within base_task, job() function, wrap a for loop to call this job this times. at the end of this for loop, record the time. This is the job completion time.
> 4. given the task start time and period, we know how many job missed its deadline.
> 
> what do you think about this?


Make sure you run any benchmarks WITHOUT debug tracing enabled—debug tracing adds considerable overhead and should never be used to collect any benchmark information. Feather-Trace and sched_trace are much more efficient and should be used for all benchmarking purposes.

Also, base_task.c is a starting point for custom experiment development—a tutorial, if you will. It is NOT intended to be run for benchmarking purposes, at least not as is. If you need something to consume cycles, use rtspin instead. If you want a meaningful workload, you can base it on  base_task.c, but you need to add the actual computation within each job yourself.

- Björn





More information about the litmus-dev mailing list