[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] xen: always set the sched clock as unstable
> From: Jan Beulich [mailto:JBeulich@xxxxxxxx] > Subject: RE: [Xen-devel] [PATCH] xen: always set the sched clock as unstable > > >>> On 16.04.12 at 19:22, Dan Magenheimer <dan.magenheimer@xxxxxxxxxx> wrote: > > In upstream (and recent pv-ops) kernels, is there any need for there > > to be a difference between HVM and PV in the clocksource chosen? The > > Yes, because RDTSC interception for PV guests is slow (using #GP > and requiring instruction decode). "Slow" is relative. I showed (somewhere on xen-devel years ago) that the emulation performance hit is much smaller than the original developers expected and is detectable only with certain applications that execute rdtsc ~100K/second. Furthermore, the cycle count of an rdtsc has gone up on modern systems, so the cost ratio of emulating rdtsc vs executing the raw instruction is going down. > > pvclock algorithm was necessary for PV when non-TSC hardware clocks > > were privileged and the only non-privileged hardware clock (TSC) > > was badly broken in hardware and for migration/save/restore. > > With TSC now working and stable, and now that we are making changes > > in the upstream kernel that work for both PV and HVM, is it > > time to drop pvclock (at least as the default for PV)? > > > > Certainly if an old (non-pv-ops) kernel is broken, something like > > David's patch might be an acceptable workaround. I'm just arguing > > against perpetuating pvclock-as-the-only-xen-clock upstream. > > Afaict, the only uniformly reliable clocksource for PV guests is the > virtual one which pvclock builds upon. Raw TSC is definitely not an > option on NUMA systems (and PV guests aren't aware of the > NUMAness of the underlying system). You'll have to define NUMA. On "old" NUMA systems, where there are multiple motherboards, your statement is true. On newer systems where NUMA simply means there are multiple memory controllers and all of them are cache-coherent, even when there are multiple "motherboards" joined by HT or QPI, processor and system vendors take great pains to ensure that the clock signal (and thus TSC) is synchronized and "stable" across all cpus. But I agree there ARE exceptions... for those, I proposed a Xen boot option that said "don't trust TSC even if all the evidence implies that you can", but Keir shot it down (also years ago). Dan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |