[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [DOC RFC] Heterogeneous Multi Processing Support in Xen



On Thu, 8 Dec 2016, Jan Beulich wrote:
> >>> On 07.12.16 at 19:29, <dario.faggioli@xxxxxxxxxx> wrote:
> > ### x86
> > 
> > There is no HMP platform of relevance, for now, in x86 world. Therefore,
> > only one class will exist, and all the CPUs will be set to belong to it.
> > **TODO X86:** is this correct?
> 
> What about the original Xeon Phi (on a PCIe card)?
> 
> > ## Hypervisor
> > 
> > The hypervisor needs to know within which class each of the present CPUs
> > falls. At boot (or, in general, CPU bringup) time, while identifying the 
> > CPU,
> > a list of classes is constructed, and the mapping between each CPU and the
> > class it is determined it should belong, established.
> > 
> > The list of classes is kept ordered from the more powerful to the less
> > powerful.
> > **TODO:** this has been [proposed by 
> > George](https://lists.xenproject.org/archives/html/xen-devel/2016-09/msg02212.html).
> > I like the idea, what do others think? If we agree on that, note that there
> > has been no discussion on defining what "more powerful" means, neither on
> > x86 (although, not really that interesting, for now, I'd say), nor on ARM.
> 
> Indeed I think there should be no assumption about the ability to
> order things here: Even if for some initial set of hardware it may
> be possible to clearly tell which one's more powerful and which
> one's more weak, already the moment you extend this from
> compute power to different ISA extensions you'll immediately end
> up with the possibility of two CPUs have a distinct extra feature
> compared to one another (say one a crypto extension and the
> other a wider vector compute engine).
> 
> It may be possible to establish partial ordering though, but it's
> not really clear to me what such ordering would be used for.

I think you are right in saying that there might not be a
straightforward ordering from powerful to weak.

Maybe it is better to say that the Xen architecture specific code will
pick a default class (not necessarily class0). The default class can be
changed with a Xen command line parameter or an hypercall.

This way we can have Xen use big cpus by default, but it can be changed
to LITTLE for example, without implying that big or LITTLE is more
powerful, which actually is difficult to determine even on ARM.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.