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

Re: [Xen-devel] xen 4.5.0 rtds scheduler perform poorly with 2vms



Hi Meng,

Thank you very much for replying!

The RT tasks I am running for each trial at a certain utilization rate is a collection of real-time tasks, and each real-time task is a sequence of jobs that are released periodically. All jobs are periodic, where each job is defined by a period (and deadline) and a worse-case execution time. Each job is just running of a number of iterations of floating point operations. This is based on the base task.c provided with the LITMUSRT userspace library. So Yes they are independent and not I/O or memory intensive.

The period distribution I have for each task is (10ms,100ms) which is bigger than the VM period I specified using xl sched-rtds (10000us), but I guess the lower bound is too close to the VM period. So by your suggestion, maybe shorten the period for VM can improve the performance?


Thank you!

Victor


On Mon, Nov 23, 2015 at 8:07 AM, Meng Xu <xumengpanda@xxxxxxxxx> wrote:
Hi Yu-An,

2015-11-23 10:42 GMT-05:00 Yu-An(Victor) Chen <chen116@xxxxxxx>:
>
> Hi all,
>
> So I was doing some experiments to evaluate RTDS scheduler schedubility of real time tasks using 1vm with period of 10000 and budget of 10000. The experiment results turn out as expected(perform better than xen-credit).


Thank you very much for doing this test and trying RTDS scheduler. :-)

>
>
> But when I tried to perform similar experiments with 2 vms (both with now period of 10000 and budget of 5000). The schedubility of real time tasks turn out really bad. Even if I have one vm idling and the other vm running the real time tasks, the schedubility of that vm is still really poor(worse than xen-credit).


RTDS scheduler is not work-conserving, while credit scheduler is. Even
if you keep one VM idling, the real-time VM that you run the RT tasks
will still get 5000 budget in each 10000. This is what the budget
replenish policy requires. However, credit scheduler will try to use
all budget (in its best effort) when there is no others running.

Another factor that may affect the performance is the period of the
VM. The VM period should be smaller than the tasks' period inside.
Keep in mind that in the worst case, the VM may not get resource for
2*(period - budget) time, when the VM's first VCPU get budget at the
beginning of the first period but get budget at the end of the next
period.


>
> Am I missing some configuration I should have set for 2vm cases? Thank you
>
> my setup is the following:
> Using Xen 4.5.0.
> 2vm sharing core 0-7, with RTDS scheduler, both has period of 10000 and budget of 5000
> Dom0 using one core from CPU 8-15, with RTDS scheduler, period of 10000 and budget of 10000
> The experiment I am doing is running real time tasks with different total utilization rate and measure the task success rate in the vm.


Which kind of RT tasks are you running inside VM? Are they
independent? Are they involving a lot of I/O or memory?

Thanks,

Meng
>
>
--


-----------
Meng Xu
PhD Student in Computer and Information Science
University of Pennsylvania
http://www.cis.upenn.edu/~mengxu/

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.