<div dir="ltr">Hi Meng,<div><br></div><div>Thank you very much for your reply!</div><div><br></div><div>Victor</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, May 28, 2016 at 5:02 PM, Meng Xu <span dir="ltr"><<a href="mailto:xumengpanda@gmail.com" target="_blank">xumengpanda@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Victor,<br>
<span class=""><br>
On Sat, May 28, 2016 at 5:36 PM, Yu-An(Victor) Chen <<a href="mailto:chen116@usc.edu">chen116@usc.edu</a>> wrote:<br>
> Hi,<br>
><br>
> My question is how does litmus-RT kernel give up CPUs when running a task?<br>
> Given a period and execution time of a task, will litmus-RT kernel yields<br>
> the CPU as soon as a task is finished? or will give up the CPU only when the<br>
> task's period is reached?<br>
<br>
</span>IIRC, when a task finishes its execution (or budget) or get blocked,<br>
the task will yield CPU. The scheduler will schedule the next ready<br>
task. You can have a look at the schedule and _finish function in<br>
litmus/sched_gsn_edf.c. It will deschedule a task if it finishes its<br>
execution.<br>
<span class=""><br>
><br>
> For example, lets say I have two tasks with same utilization but one has<br>
> longer period. And I run this two tasks on separate machine with same<br>
> duration. Can I safely assume that the task with shorter period will have<br>
> the litmus-RT yielding CPUs more frequently?<br>
<br>
</span>The short-period task has more jobs. So as long as its utilization is<br>
less than 1, it should be, IMHO.<br>
<span class=""><br>
><br>
> Please let me know if there is any reference or paper I can read on<br>
> regarding litmus-RT yielding CPUs. Thank you very much!<br>
<br>
</span>I guess the code is the best reference. :-)<br>
<br>
<br>
Best Regards,<br>
<br>
Meng<br>
-----------<br>
Meng Xu<br>
PhD Student in Computer and Information Science<br>
University of Pennsylvania<br>
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__www.cis.upenn.edu_-7Emengxu_&d=DQICAg&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=IitX1U91-NhsQt0q4MJOLQ&m=i4mU8UlZekeRsUFZnpdC1Vljb0IPF8-lb-0UdjOrV-M&s=G2Tui2lGT_R5Phy1apmN8P6CQs6IfHKxPlQ9aMg3CTM&e=" rel="noreferrer" target="_blank">https://urldefense.proofpoint.com/v2/url?u=http-3A__www.cis.upenn.edu_-7Emengxu_&d=DQICAg&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=IitX1U91-NhsQt0q4MJOLQ&m=i4mU8UlZekeRsUFZnpdC1Vljb0IPF8-lb-0UdjOrV-M&s=G2Tui2lGT_R5Phy1apmN8P6CQs6IfHKxPlQ9aMg3CTM&e=</a><br>
<br>
_______________________________________________<br>
litmus-dev mailing list<br>
<a href="mailto:litmus-dev@lists.litmus-rt.org">litmus-dev@lists.litmus-rt.org</a><br>
<a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.litmus-2Drt.org_listinfo_litmus-2Ddev&d=DQICAg&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=IitX1U91-NhsQt0q4MJOLQ&m=i4mU8UlZekeRsUFZnpdC1Vljb0IPF8-lb-0UdjOrV-M&s=zzpjrcFOcE4wGK6AkEcPXdoKCMDsYq9liXs_6lQ5ujQ&e=" rel="noreferrer" target="_blank">https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.litmus-2Drt.org_listinfo_litmus-2Ddev&d=DQICAg&c=clK7kQUTWtAVEOVIgvi0NU5BOUHhpN0H8p7CSfnc_gI&r=IitX1U91-NhsQt0q4MJOLQ&m=i4mU8UlZekeRsUFZnpdC1Vljb0IPF8-lb-0UdjOrV-M&s=zzpjrcFOcE4wGK6AkEcPXdoKCMDsYq9liXs_6lQ5ujQ&e=</a><br>
</blockquote></div><br></div>