From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeremy Fitzhardinge Subject: Re: RE: Saving/Restoring IA32_TSC_AUX MSR Date: Fri, 11 Dec 2009 10:50:29 -0800 Message-ID: <4B229475.8060302@goop.org> References: <744491ae-d02b-451c-817d-549ee43764a1@default> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <744491ae-d02b-451c-817d-549ee43764a1@default> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Dan Magenheimer Cc: xen-devel@lists.xensource.com, "Dugger, Donald D" , "Xu, Dongxiao" , Keir Fraser , "Nakajima, Jun" , "Zhang, Xiantao" List-Id: xen-devel@lists.xenproject.org On 12/11/09 10:35, Dan Magenheimer wrote: >> However, the vcpu number is definitely useful to usermode >> apps, so they >> can get some idea how they're moved between (v)cpus. I don't >> think it >> will matter to them that it isn't pcpu. >> > My point is that an app running on native Linux can > safely assume that, if TSC_AUX==3 at time T1 and > TSC_AUX is still 3 at time T2,it is running > on the same processor and the same node at both T1 > and T2. In a virtual environment it cannot even > assume it is running on the same machine. > Further if the app sees that TSC_AUX==2 at time T3 > and TSC_AUX==3 at time T4, on native Linux it > can safely assume that it is running on a different > processor. While rarer, in a virtual environment, > this may also be a false assumption. > > That's why I say the information is misleading. > Sure, but that info is, at best, of heuristic value, and won't cause any correctness problems if it is wrong. The performance may suck, but that's part of the larger problem of running NUMA-aware code in a virtual environment. J