<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Apr 22, 2014, at 8:15 AM, Sanjib Das <<a href="mailto:cnt.sanjib@googlemail.com">cnt.sanjib@googlemail.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div><div><div><div><div>Dear Everyone,<br><br></div>I am using the experiment script from the following link <a href="https://github.com/LITMUS-RT/experiment-scripts">https://github.com/LITMUS-RT/experiment-scripts</a> to generate the synthetic tasks and was able to simulate for PSN-EDF. <br>
<br></div>Can anyone help me how can I generate a reasonable about of taskset for simulation using PFAIR scheduling algorithm(Implementation of the PD^2 pfair scheduling algorithm. This implementation realizes "early releasing), provided in LIRMUS-RT version 2013.1.<br>
<br></div>I would be glade with any information that leads me to simulate the mentioned algorithm above.<br><br></div>Regards<br></div>Sanjib<br></div></blockquote><br></div><div><br></div><div>Hi Sanjib,</div><div><br></div>In response to your other email on the availability of PFAIR, it’s in the latest Litmus kernel (code: <a href="https://github.com/LITMUS-RT/litmus-rt/blob/master/litmus/sched_pfair.c">https://github.com/LITMUS-RT/litmus-rt/blob/master/litmus/sched_pfair.c</a>). Just make sure that you properly configure the kernel at compile-time to get it. As you might see in litmus/Kconfig (<a href="https://github.com/LITMUS-RT/litmus-rt/blob/master/litmus/Kconfig#L15">https://github.com/LITMUS-RT/litmus-rt/blob/master/litmus/Kconfig#L15</a>), CONFIG_HIGH_RES_TIMERS and CONFIG_HZ_PERIODIC must be set and CONFIG_HZ must == 1000.<div><br></div><div>Regarding the experiment-scripts, currently there are no task-set generators for pfair. I believe you could quickly copy and modify the C-EDF generator to create task sets for pfair (this is because the pfair plugin can be clustered along cache-level boundaries, just like C-EDF).</div><div><br></div><div>My suggestion:</div><div>Step 1: Replicate the CedfGenerator (<a href="https://github.com/LITMUS-RT/experiment-scripts/blob/master/gen/edf_generators.py#75">https://github.com/LITMUS-RT/experiment-scripts/blob/master/gen/edf_generators.py#75</a>), naming it CpfairGenerator or some such, and make the appropriate changes to make it use pfair.</div><div>Step 2: Add your new generator to gen/__init__.py (<a href="https://github.com/LITMUS-RT/experiment-scripts/blob/master/gen/__init__.py">https://github.com/LITMUS-RT/experiment-scripts/blob/master/gen/__init__.py</a>)</div><div>Step 3: I think that’s it. You should be able to follow the tutorial for gen_exps.py here: <a href="https://github.com/LITMUS-RT/experiment-scripts">https://github.com/LITMUS-RT/experiment-scripts</a></div><div><br></div><div>These changes should take more than 30 minutes to add and test (assuming that I haven’t missed anything). I’d be happy to accept a patch that adds pfair functionality.</div><div><br></div><div>-Glenn</div></body></html>