[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



On Fri, 2015-11-27 at 08:36 -0800, Yu-An(Victor) Chen wrote:
> Hi Dario,
> 
Hi,

> Thanks for the reply!
> 
You're welcome. :-)

I'm adding Meng to Cc...

> My goal for the experiment is to show that xen rtds scheduler is
> better than credit scheduler when it comes to real time tasks. 
> so my set up is:
> 
> for xen-credit : 2vms sharing 8 cores (cpu 0-7) using credit
> scheduler(both with weight of 800 and capacity of 400)
> for xen-rtds: 2 vms sharing 8 cores (cpu0-7) using RTDS (both with
> period of 10000 and budget of 5000) 
> in both setup, dom0 is using 1 core from cpu 8-15
> 
I can't see you saying how many vCPUs each VM has. I presume 4? I'll
assume that is the case in the rest of this email.

> VM2 will run tasks that has utilization of 4 cores. VM1 will run
> tasks that has utilization from 1 to 4, and I will record VM1's
> schedulbility. 
> 
I'm not sure what you mean with "tasks that has utilization of 4 cores"
(or, in general, "of X cores").

I'll assume it means that you run some kind of periodic tasks, each one
with an utilization ratio, given by the computation time of their
periodic instances over their period, and that the sum of all these
ratios give 4 (or, in general, X).

If this is not the case, please, clarify.

> I am hoping to see that the VM1 using xen-rtds will perform better
> than the VM1 using xen-credit, but what I am seeing is the opposite.
> 
Ok, let's try some maths. Not real-time scheduling theory (for
now :-) ), just maths.

let's take VM2. What I understand is that the "internal demand", from
tasks running inside it, would be 400%. Assuming the VM has 4 vCPUs,
since each vCPU has 5000/10000=50%, the VM has, in total, 200%. So, in
this case, I don't see how a demand of 400% could be satisfied by a
supply of 200%.

If the VM has 8 vCPUs, each at 50%, that does mean that it could, in
theory, serve a demand of 400%. But that does not "just" happens. Here
it is where real-time scheduling theory comes into play, and I'll let
Meng comment on this (if he's interested :-D), as I don't recall the
details of those formulas any longer!

In a nutshell, budgets ad periods of tasks and VMs must satisfy certain
condition, in order to the schedulability of the whole system to be
guaranteed.

Therefore, either because you have misconfigured the system, or because
you are hitting some real-time scheduling "issues", it is well possible
that, in this simple case, for a best effort scheduler to do a pretty
fine job. There are indeed differences and specific use case and
scenarios for Credit and RTDS.

The one you described is just not one of them. :-D

Regards,
Dario
-- 
<<This happens because I choose it to happen!>> (Raistlin Majere)
-----------------------------------------------------------------
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
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®.