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

Re: [Xen-devel] PV guest timings

------ Original Message ------
From: "Dario Faggioli" <dario.faggioli@xxxxxxxxxx>
To: "Simon Martin" <smartin@xxxxxxxxxxxx>
Cc: "xen-devel@xxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxx>; "Andrew Cooper" <andrew.cooper3@xxxxxxxxxx>; "Roland Heusser" <heusserr@xxxxxxxxxxxxx>; "Sisu Xi" <xisisu@xxxxxxxxx>; "Joshua Whitehead" <whitehej@xxxxxxxxxxxxx>; "Drek Darkover" <wackerei@xxxxxxxxx>; "Nate Studer" <nate.studer@xxxxxxxxxxxxxxx>
Sent: 27/11/2013 05:56:26
Subject: Re: Re[2]: [Xen-devel] PV guest timings
On mer, 2013-11-27 at 02:36 +0000, Simon Martin wrote:
 > Is there any chance that you can share/show it? At least the
 > relevant
 > chunks...
 No problems, I can share the complete code it you want, there is
 nothing proprietary in there yet. What's the best way to do it? Put it
 on github? Send a tarball?
Well, I think a repo somewhere would be preferrable over a tarball,
espacially if you have it in a (although private) repo already, so that
we gt to see the history, the commit changelogs, etc.
Here's the URL. https://github.com/FurryFuttock/micro-pv. There is no commit history as I mostly use SVN. I just created this and will keep it up to date as I carry on playing with it.
 > Some questions:
 > - "looking at the statistics", what statistics? How do you collect
 > them?
 At every cycle I compare the current time with the expected time and
 calculate latency (time from when I expect the event to when it
 actually happens) and period.
Sure, that part I got. I was more asking how you get these numbers out,
i.e., you print them online, store somewhere and print later/on request,
etc. (I guess I could have specified this more clearly, sorry about
that :-) )
Here's an example. There are 2 lines per sample. Line 0 has format <time> <ticks per second>, line 1 has <latency min/max>,<period min/max>
timeofday=12:56:41 - 1000
timeofday=12:56:42 - 1000
timeofday=12:56:43 - 1000
timeofday=12:56:44 - 1000
timeofday=12:56:45 - 1000
timeofday=12:56:46 - 1000
timeofday=12:56:47 - 1000
timeofday=12:56:48 - 1000
timeofday=12:56:49 - 1000
timeofday=12:56:50 - 1000
timeofday=12:56:51 - 1000
timeofday=12:56:52 - 1000
 > - you say you get latencies in some range and periods in some
 > other
 > range. It may be my fault, but I'm not sure I understand what
 > you
 > mean with these two terms in this context, could you clarify?
 Latency = difference between expected time and actual time of the
 Period = time between two consecutive events.
Ok, I think I see now. Just to confirm that I do, this means that the
values/ranges you get by measuring both are related, i.e., not
completely independent, right? Again, I'm not saying it's not useful to
have both, just trying to double check I understood what you're doing.
They're not really related. Period is time between events, Latency is time from event to handler.
 > I'm not sure if fits your exact needs, and you probably know it
 > already,
 > but, just in case, have you looked at xentrace and xenalyze? There's
 > a
 > blog post that could be a nice introduction to them:
 I hadn't read that. I'll look at it tomorrow (it's almost midnight
Ask again if you need anything.
I will :-)! Thanks.

PNG image

Xen-devel mailing list



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