78 messages in com.xensource.lists.xen-develRe: [Xen-devel] [PATCH] Add a timer m...
FromSent OnAttachments
Shan, Haitao30 Oct 2007 07:27.patch
Keir Fraser30 Oct 2007 09:12 
Dave Winchell30 Oct 2007 14:15.vpt, .c
Shan, Haitao30 Oct 2007 20:09.patch
Keir Fraser31 Oct 2007 00:09 
Dave Winchell01 Nov 2007 14:14.patch
Dave Winchell01 Nov 2007 14:21 
Keir Fraser02 Nov 2007 02:40 
Dave Winchell02 Nov 2007 08:50 
Keir Fraser02 Nov 2007 09:14 
Keir Fraser02 Nov 2007 09:35 
Dave Winchell02 Nov 2007 11:05 
Dave Winchell03 Nov 2007 14:17.Other
Keir Fraser03 Nov 2007 15:31.patch
Dave Winchell05 Nov 2007 06:36 
Dave Winchell07 Nov 2007 06:38.Other
Keir Fraser07 Nov 2007 06:39 
Dave Winchell07 Nov 2007 08:22 
Keir Fraser07 Nov 2007 09:10 
Keir Fraser07 Nov 2007 09:28 
Keir Fraser07 Nov 2007 09:47 
Dave Winchell07 Nov 2007 11:38 
Keir Fraser08 Nov 2007 00:07 
Dave Winchell08 Nov 2007 06:42 
Keir Fraser08 Nov 2007 06:52 
Dave Winchell08 Nov 2007 06:57 
Dave Winchell08 Nov 2007 07:08 
Dave Winchell09 Nov 2007 11:22.patch
Keir Fraser10 Nov 2007 02:54 
Dave Winchell12 Nov 2007 07:37 
Dave Winchell26 Nov 2007 12:57 
Keir Fraser06 Dec 2007 03:56 
Dan Magenheimer19 Dec 2007 10:56 
Dave Winchell19 Dec 2007 11:32 
Dave Winchell19 Dec 2007 11:39 
Dan Magenheimer03 Jan 2008 14:57 
Dave Winchell03 Jan 2008 15:23 
Dave Winchell04 Jan 2008 15:23.time
Keir Fraser08 Jan 2008 06:32 
Dave Winchell09 Jan 2008 08:52 
Dan Magenheimer09 Jan 2008 09:18 
Keir Fraser09 Jan 2008 11:13 
Dan Magenheimer25 Jan 2008 15:50.png
Dave Winchell27 Jan 2008 13:21 
Dan Magenheimer27 Jan 2008 16:29 
Dave Winchell28 Jan 2008 07:20 
Dan Magenheimer29 Jan 2008 14:34.png
Dave Winchell30 Jan 2008 07:24 
Deepak Patel30 Jan 2008 13:03 
Dave Winchell30 Jan 2008 13:44 
Dan Magenheimer01 Feb 2008 14:30.png
Dave Winchell04 Feb 2008 12:06 
Dave Winchell08 Feb 2008 13:20 
Dave Winchell11 Feb 2008 08:52.png
Dave Winchell14 Feb 2008 07:59 
Dan Magenheimer14 Feb 2008 08:20 
Dave Winchell14 Feb 2008 09:55 
Dan Magenheimer15 Feb 2008 08:46 
Dave Winchell15 Feb 2008 09:27 
Dave Winchell19 Feb 2008 07:26 
Dan Magenheimer19 Feb 2008 09:55 
Keir Fraser19 Feb 2008 11:29 
Dave Winchell19 Feb 2008 12:50 
Dan Magenheimer19 Feb 2008 15:37 
Dan Magenheimer20 Feb 2008 15:40 
Dan Magenheimer25 Feb 2008 08:41 
Dave Winchell25 Feb 2008 12:00 
Keir Fraser26 Feb 2008 00:25 
Dave Winchell26 Feb 2008 06:45 
Keir Fraser26 Feb 2008 06:56 
Dave Winchell26 Feb 2008 07:48 
Dave Winchell05 Mar 2008 07:06 
Keir Fraser05 Mar 2008 07:19 
Keir Fraser05 Mar 2008 09:20 
Dave Winchell05 Mar 2008 09:25 
Dave Winchell05 Mar 2008 09:42 
Dan Magenheimer05 Mar 2008 09:53 
Dan Magenheimer06 Mar 2008 15:35 
Subject:Re: [Xen-devel] [PATCH] Add a timer mode that disables pending missed ticks
From:Dave Winchell (dwin@virtualiron.com)
Date:11/09/2007 11:22:00 AM
List:com.xensource.lists.xen-devel
Attachments:

Keir,

Here are the results of the testing I've done recently. There are three protocols tested. I'll call them ASYNC for the code as it stood just before your last check-in, MIXED (for ASYNC+SYNC) for the code you recently checked in, and SYNC for the method I proposed in the last mail.

Date Duration Protocol sles, rhat error

11/07 23 hrs 40 min ASYNC -4.96 sec, +4.42 sec -.006%, +.005% 11/08 28 min MIXED -.75 sec, -.67 sec -.045%, -.040% 11/08 2 hrs 21 min SYNC -.80 sec, -.34 sec, -.009%, -.004% 11/08 1 hr 25 min SYNC -.24 sec, -.26 sec, -.005%, -.005% 11/08 15 hrs 39 min MIXED -19. sec,-17.4 sec, -.034%, -.031% 11/09 3 hrs 19 min ASYNC -.13 sec, +1.44 sec, -.001%, +.012%

Each protocol was run a couple of times to gage the repeatability.

Since I had a high error (~.03%) for the ASYNC method a couple of days ago, I ran another ASYNC test. I think there may have been something wrong with the code I used a couple of days ago for ASYNC. It may have been missing the immediate delivery of interrupt after context switch in.

My results indicate that either SYNC or ASYNC give acceptable accuracy, each running consistently around or under .01%. MIXED has a fairly high error of greater than .03%. Probably too close to .05% ntp threshold for comfort. I don't have an overnight run with SYNC. I plan to leave SYNC running over the weekend. If you'd rather I can leave MIXED running instead.

It may be too early to pick the protocol and I can run more overnight tests next week.

I have attached a patch based on what's checked-in now that shows what I tested for SYNC and ASYNC. For MIXED I used the code that is checked-in now. The patch looks more complicated than the change really is as it backs out the MIXED code you put in.

Regards, Dave

Keir Fraser wrote:

On 8/11/07 14:43, "Dave Winchell" <dwin@virtualiron.com> wrote:

I agree that this could be a problem. I have an idea that could give us full SYNC and eliminate the long periods without clock interrupts. In pt_process_missed_ticks() when missed_ticks > 0 set pt->run_timer = 1. In pt_save_timer():

list_for_each_entry ( pt, head, list ) if(!pt->run_timer) stop_timer(&pt->timer);

And in pt_timer_fn():

pt->run_timer = 0;

So, for a guest that misses a tick, we will interrupt him once from the descheduled state and then leave him alone in the descheduled state.

Well, I'd rather not complicate the code if it's avoidable. I checked in a SYNC/ASYNC combo and code simplification as changeset 16341, and it'd be interesting to know how that fares against your suggested scheme. I suppose as long as we're better than ntpd's tolerance it doesn't actually matter all that much.

-- Keir