On Thursday, May 21, 2015, Pavel Fedin <[email protected]> wrote: > Hello! > > > In order to support up to 128 cores with GIC-500 (GICv3 implementation) > > affinity1 must be used. GIC-500 support up to 32 clusters with up to > > 8 cores in a cluster. So for example, if one wishes to have 16 cores, > > the options are: 2 clusters of 8 cores each, 4 clusters with 4 cores each > > I have found one more concern. Are you really sure about this scheme ? I > am currently > experimenting with KVM, and it seems to have 16 CPUs per cluster, at least > on my machine. > Actually i suggest that KVM inherits the mapping from the host. Can we do > the same? > I will take a look at kvmtool, how it determines these IDs. But hardcoded > scheme is > definitely wrong. > > Cc'ed Ashok because he might also be interested. > > Kind regards, > Pavel Fedin > Expert Engineer > Samsung Electronics Research center Russia > > Hi Pavel,
I can only quote from GIC-500 document ( http://infocenter.arm.com/help/topic/com.arm.doc.ddi0516b/DDI0516B_gic5000_r0p0_trm.pdf) which is currently the only GICv3 implementation) I'll recheck the GICv3 when I'll return to work on Monday. >From section 1.3 features. The GIC-500 provides registers for managing interrupt sources, interrupt behavior, and interrupt routing to one or more cores. It supports: • Multiprocessor environments with up to 128 cores. • Up to 32 affinity-level 1 clusters. • Up to eight cores for each cluster. I guess your hardware uses different GIC. Best regards, S.P.
