From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [RFC 0/5] xen/arm: support big.little SoC Date: Fri, 23 Sep 2016 15:52:13 +0200 Message-ID: <1474638733.23934.27.camel@citrix.com> References: <1ae3ca04-2fdd-531f-7cb1-0b3ab80feccb@arm.com> <20160922064928.GB19448@linux-u7w5.ap.freescale.net> <1474534223.4393.320.camel@citrix.com> <20160922092744.GA22134@linux-u7w5.ap.freescale.net> <78b688a0-1a74-0225-2fde-a66b622a2a7e@arm.com> <20160923021423.GC27908@linux-u7w5.ap.freescale.net> <98f090ef-3fff-304d-6fb7-d4f9da858a0a@arm.com> <20160923100523.GB5828@linux-u7w5.ap.freescale.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============5286055291828252658==" Return-path: In-Reply-To: <20160923100523.GB5828@linux-u7w5.ap.freescale.net> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Peng Fan , Julien Grall Cc: Juergen Gross , Peng Fan , Stefano Stabellini , Steve Capper , George Dunlap , Andrew Cooper , Punit Agrawal , George Dunlap , "xen-devel@lists.xen.org" , Jan Beulich List-Id: xen-devel@lists.xenproject.org --===============5286055291828252658== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="=-BOzEZiHqeSqEN5tRYZgx" --=-BOzEZiHqeSqEN5tRYZgx Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, 2016-09-23 at 18:05 +0800, Peng Fan wrote: > We still can introduce cpupool-cluster-split or as Juergen suggested, > use "cpupool-slit feature=3Dxx"=C2=A0=C2=A0to split the cluster or cpucla= sses > into different cpupools. This is just a feature that better to have, > I think. >=20 > The reason to include cpupool-cluster-split or else is to split the > big and little > cores into different cpupools. And now big and little cores are in > different cpu > clusters from the hardware[1] I can see.=20 > Note that this `cpupool-split' thing is meant to be an aid to the user to quickly put the system in a state that we think it could be a common or relevant setup. For instance, cpupools can be used to partition big NUMA system, and we thought users may be interested in having one pool per NUMA node, so an helper for doing that quickly (i.e., with just one command) has been provided. That does not mean that it's the only use of cpupools, nor that it's the only --or the only sane-- way to use cpupools on NUMA systems... it's just a speculation, in an attempt to make life easier for users. In a similar way, if we think that, for instance, creating a 'big pool' and a 'LITTLE pool' would be something common, and/or we (Peng? Stefano?) already have an usecase for this, we can well implement a `cpupool-split' variant that does that. *BUT* that does not mean that people must use it, or that they can't do anything else or different with cpupools on ARM! In fact, on a NUMA system, one can completely ignore `cpupool-numa-split', and create whatever pools and assign pcpus to them at will. Or she can actually use `cpupool-numa-split' as a basis, i.e., issue the command, manually alter the resulting status, by doing some more movement of pcpus among the pools the command created. All this to say that, especially when thinking about this cpupool-split thing, we "only" need to come up with something that we think makes sense, either to be used as is or as a basis, not to the one and only way cpupools and big.LITTLE --or ARM in general-- should interact. In fact: > I think assigning cores from > different clusters into one cpupool is not a good idea. >=20 I'd be perfectly fine with this, and with cpupool-split on big.LITTLE to cut pools around clusters boundaries. But I definitely would not want to forbid the user to manually shuffle things around, including ending up in a situation where there are pcpus from different class/cluster/whatever in the same pool... If that is shooting in his own foot, then so be it! Thanks and Regards, Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-BOzEZiHqeSqEN5tRYZgx Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAABCAAGBQJX5TOOAAoJEBZCeImluHPufQoP/1Eues6PdZMm14N7o8h6icY3 IlvGMaLwvwjtakzyaoyQcv07v9vUXox4FfOujG6bjxiBGQHR0TPHpAdzy3SBnsjC UmTZdZ07AiplXqs2achR1fPVnJyH2y/qEYHjRVIItcYu6KqSYXQEWrQf2k9z7aqL wpWD0UFJgYMImzxoVRNtg8WIvkn72Ix7yoaDr4Bc+BI7uyUAMc0TQ0T/vnr98n5s pAJ/33fB8Pcsh6WuEKQAQg2P7ZMjqQQz3XdRQb6G7QVZ50D9U+Zk0+w+gGnb+2cb uFXb9g+X2OpKRmVYnnHFNEczW/ZqXwQiX5+tM72H1fzjp9XIj2KLhyRByK/H2ZzU Wd77ZO8kluMUwqpQW9hGfQuZ9uilvsccLPQQaTJegry0098GZ3ZiexRpe8iAiV4W Cc1VuBAdXY3FSg9RET4F12ktmqAm9/10SRaXGLqBL0KI/4YZDmIuh77E8CUrWXBl 5alWa20+rKFg2P3wR7Do7OB+ak2EQc57gFCs/myjwMBEyq+/bq9WMd03e5oY4sxS yoHyKcocQToJDg5jREbER3l82rIyle1dLsb0qmEWOwdxuT0ysVOjwgopfcAWakyb TT8yzk8gRNVrtksakyDsohSJyEjRZ0F77XcsTye4bRtPBWqOb8s5VUnUzdJkF7CO wCF1T9vN6Zyo4vV0PecB =Wqit -----END PGP SIGNATURE----- --=-BOzEZiHqeSqEN5tRYZgx-- --===============5286055291828252658== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============5286055291828252658==--