xen-ia64-devel
[Xen-ia64-devel] RE: Timer merge
To: |
"Tian, Kevin" <kevin.tian@xxxxxxxxx>, "Dong, Eddie" <eddie.dong@xxxxxxxxx>, <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx> |
Subject: |
[Xen-ia64-devel] RE: Timer merge |
From: |
"Magenheimer, Dan (HP Labs Fort Collins)" <dan.magenheimer@xxxxxx> |
Date: |
Fri, 26 Aug 2005 06:04:38 -0700 |
Cc: |
"Mallick, Asit K" <asit.k.mallick@xxxxxxxxx> |
Delivery-date: |
Fri, 26 Aug 2005 13:02:32 +0000 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
List-help: |
<mailto:xen-ia64-devel-request@lists.xensource.com?subject=help> |
List-id: |
Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com> |
List-post: |
<mailto:xen-ia64-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-ia64-devel>, <mailto:xen-ia64-devel-request@lists.xensource.com?subject=unsubscribe> |
Sender: |
xen-ia64-devel-bounces@xxxxxxxxxxxxxxxxxxx |
Thread-index: |
AcWnjSOhSjX2nMKXQI2EGFjNgzyS+AAXrvdAAAAqXDAAAf54IAAFcXoAAATDFSAAADCbAAAOO83gAB29uYAAKFIVoAACuHFQAC2vyoAAAx/l4A== |
Thread-topic: |
Timer merge |
> >Delivering all ticks to all guests is certainly not
> >scalable. Say there are 1000 lightly-loaded guests sharing
> >a single processor server. The entire processor would be
> >utilized just delivering all the ticks to each guest!
> >
> >Is this what Xen/x86 does?
>
> Eddie explained the difference in last mail. Since you also
> agree there's no need to inject all ticks into all guest,
> this factor somehow reduces the necessity to always inject
> virtual timer interrupt that quick in fast path. (Yes, a
> clean fast path is always welcomed. ;-)
I'm not sure I agree. Although there is no need to inject
all the ticks when a guest "wakes up", there is still a need
to inject all the ticks when a guest is active, and this
is still 1024 hz for Linux.
> >> Now HZ is defined as 100 in config.h, however current itm
> >> modification policy actually makes this periodic value
> >> useless. Even when itm_delta is added and set into itm, an
> >> immediately following ac_timer softirq will reprogram the itm
> >> to the closest time point in the ac timer list.
> >
> >This sounds like a bug (but on the path for scheduling domains,
> >not delivering guest ticks, correct?)
>
> This is a bug if you want to keep a periodic HZ concept in
> hypervisor. (Maybe we can abandon it and only keep a one-shot
> timer model later). It's unrelated to this discussion, and
> just raised it since mentioned in the context.
I'm not sure I understand the differences between the periodic
HZ concept and the one-shot timer model... doesn't there always
need to be a timeout for the currently running domain so
the hypervisor scheduler can schedule a different domain?
> IMO, the extra work should at least keep a global monotonic
> increasing variable to hold itc value at last time interrupt.
> Then the delta value of guest itc should base on this global
> variable, instead of local itc. When emulating read_from_itc,
> we may return by formula like "(now_itc > monotonic_itc) ?
> (now_itc + vitc_delta) : (monotonic_itc + vitc_delta)". This
> can promise itc never going backward when vcpu migration. En,
> anyway this is just some rough thought immediately raised,
> and we definitely need elaborate and detail discussion in
> design for vcpu migration. Currently we just need a guest ITM
> together with ITC delta, as Eddie suggested.
So in your model, reading itc is privileged? (e.g. secure
itc bit is on) In the current model, it is not.
> Since SGI guys are also doing something on XEN/IPF, I'm
> afraid that we'll see possible issue on SN ia64 platform
> soon. IFIRC, SN platform has un-synchronized ITC, and thus
> requires a platform RTC timer source to adjust system time.
> Also SN box has been supported well on current linux release.
> Maybe some SGI people can jump out to give expertise idea here. ;-)
Greg, are you still listening out there?
> I agree we should enhance current code step by step without
> anything regressed, (even linux timer source has been
> modified so many times). We can keep such parallel discussion
> to learn more ideas from community, at same time with
> agreement to merge current time code with minimal impact in
> first step.
Sounds good!
Dan
_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-ia64-devel] RE: Timer merge, Magenheimer, Dan (HP Labs Fort Collins)
- [Xen-ia64-devel] RE: Timer merge, Tian, Kevin
- [Xen-ia64-devel] RE: Timer merge, Magenheimer, Dan (HP Labs Fort Collins)
- [Xen-ia64-devel] RE: Timer merge, Dong, Eddie
- [Xen-ia64-devel] RE: Timer merge, Tian, Kevin
- [Xen-ia64-devel] RE: Timer merge, Magenheimer, Dan (HP Labs Fort Collins)
- [Xen-ia64-devel] RE: Timer merge,
Magenheimer, Dan (HP Labs Fort Collins) <=
- [Xen-ia64-devel] RE: Timer merge, Tian, Kevin
- [Xen-ia64-devel] RE: Timer merge, Dong, Eddie
- [Xen-ia64-devel] RE: Timer merge, Magenheimer, Dan (HP Labs Fort Collins)
- [Xen-ia64-devel] RE: Timer merge, Dong, Eddie
|
|
|