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

Re: [Xen-devel] VCPU migration overhead conpensation ?

On mer, 2013-04-10 at 06:44 +0100, Sisu Xi wrote:
> Hi, Dario:
Hi! :-)

> I am also performing some overhead measurement for the scheduler. If a
> VCPU is migrated from one core to another, the overhead is around 2
> microseconds on my machine, which is much less than what is set in
> Credit2 (50 microseconds). 
Ok, and, finally, how did you decide to measure this? I mean, what is it
that you are doing for coming up with that 2us value?

When I was doing research on task scheduling, in "plain" OS, not
hypervisors, I remember having setup something like this: you take a
task (or a set of them), performing a known computation on a certain
CPU, and you measure how long it takes. After that, you force a
migration to another CPU, and keep monitoring the duration of the
computation. Well, the first samples that you get right  after the
migration, gives you an idea of the overhead caused by the migration

Of course, you can/should try different kind of migrations, i.e., across
cores (i.e., with a lot of shared caches), across sockets, etc.

It is an indirect method, but the nice thing is you can use real
programs and inspect the effect of migration on real workloads (e.g., a
video player playing the same video).

Of course, we have one more "layer of indirection" here (the vCPUs), but
I guess we can think of something... So, again, I'm curious, how are you
measuring it?


<<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



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