From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: Re: [PATCH 1/3] libxl: check whether vcpu affinity and vnuma info match Date: Tue, 24 Mar 2015 15:56:22 +0000 Message-ID: <20150324155622.GI30219@zion.uk.xensource.com> References: <20150324132630.10874.78040.stgit@Solace.station> <20150324134146.10874.3628.stgit@Solace.station> <20150324144149.GD30219@zion.uk.xensource.com> <1427212045.2560.221.camel@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <1427212045.2560.221.camel@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Dario Faggioli Cc: Ian Jackson , Wei Liu , Ian Campbell , Stefano Stabellini , "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org On Tue, Mar 24, 2015 at 03:47:27PM +0000, Dario Faggioli wrote: > On Tue, 2015-03-24 at 14:41 +0000, Wei Liu wrote: > > On Tue, Mar 24, 2015 at 02:41:48PM +0100, Dario Faggioli wrote: > > > Currently all the checks that returns error are all guest visible > > mis-configurations. I'm trying to reason whether we should return an > > error or just print a warning. > > > > What is the outcome if you have conflicting setting in vNUMA and vcpu > > affinity? > > > The outcome is that vcpus will either always run (if hard affinity and > vnuma info mismatch) or prefer to run (if soft affinity and vnuma info > mismatch) on pcpus from pnode(s) different from the pnode specified in > vnuma configuration, and hence where the memory is. > > So, for instance, with this: > > vnuma = [ [ "pnode=0","size=1000","vcpus=0-1","vdistances=10,20" ], > [ "pnode=1","size=1000","vcpus=2-3","vdistances=20,10" ] ] > > and this: > > cpus_soft = "node:1" > cpus = "node:0" > > in the config file, we have a soft affinity mismatch for vcpus 0,1 and > an hard affinity mismatch for vcpus 2,3. > > This means that vcpus 0,1 can run everywhere, but they will prefer to > run on pcpus from pnode 1, while, when the domain was built, they've > been assigned to vnode 0, which has its memory allocated from pnode 0. > This will (potentially) cause a lot of remote memory accesses. > > It also means that vcpus 2,3 will only run on pcpus from node:0, while > they've been assigned to vnode 1, which has its memory allocated from > pnode 1. This will mean all memory accesses will be remote memory > accesses > > So no functional consequences, but performance will most likely be > affected. > > > I guess it's just performance penalty but nothing guest > > visible could happen? > > > Exactly. OK. I think we can be lenient on this sort of thing. I think you also need to add to the comment before libxl__vnuma_config_check. With that change added: Acked-by: Wei Liu > > Regards, > Dario