[LITMUS^RT] Running LITMUS-RT on ARM64
Andrii Anisov
andrii_anisov at epam.com
Tue Aug 29 14:42:34 CEST 2017
Hello Meng Xu,
On 28.08.17 22:06, Meng Xu wrote:
> In this case, the task will miss deadline.
> For example, a task with period = 10, exe = 5.5 runs on vcpu with
> period = 10 and budget = 4, assuming the release time of the task and
> the vcpu are synchronized at t=0.
> At t = 0, the task release the job 1. At t=4, the task only executes
> for 4 time units. The task will run for 1.5 time unit in the next
> period. (This is called carry-over workload.) This job (released at t
> = 0) of the task will be marked as deadline miss.
>
> IIRC, in LITMUS, the task will skip the release of the job 2 who is
> supposed to release at t = 10, because the first job of the task is
> still running.(Correct me if I'm wrong, Bjorn.)
>
> At t = 20, the task will release the job 3.
>
> As you can see, one job is missing due to the deadline miss.
Actually that is my understanding of the process.
But in practice I see that no DL misses in such an experiment, just task
execution time is reported longer than expected.
I guess it is due to the fact that rtspin rely on the time spent for a
job, not amount of work. So in case the vcpu is scheduled out and in
during the loop, the offline time would be accounted as execution time
for the task. Because for the Linux kernel vcpu preemption is completely
transparent. And this could lead to task execution time stretching as
well as showing no DL misses in described case.
--
*Andrii Anisov*
More information about the litmus-dev
mailing list