[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC 42/52] hw/machine: Add hybrid_supported in generic topo propert
From: |
Zhao Liu |
Subject: |
Re: [RFC 42/52] hw/machine: Add hybrid_supported in generic topo properties |
Date: |
Wed, 15 Feb 2023 10:53:23 +0800 |
On Tue, Feb 14, 2023 at 09:46:50AM +0800, wangyanan (Y) wrote:
> Date: Tue, 14 Feb 2023 09:46:50 +0800
> From: "wangyanan (Y)" <wangyanan55@huawei.com>
> Subject: Re: [RFC 42/52] hw/machine: Add hybrid_supported in generic topo
> properties
>
> Hi Zhao,
>
> 在 2023/2/13 17:50, Zhao Liu 写道:
> > From: Zhao Liu <zhao1.liu@intel.com>
> >
> > Since hybrid cpu topology configuration can benefit not only x86, but
> > also other architectures/platforms that have supported (in real
> > machines) or will support hybrid CPU topology, "-hybrid" can be generic.
> >
> > So add the generic topology property to configure if support hybrid
> > cpu topology for architectures/platforms in SmpCompatProps.
> >
> > Also rename SmpCompatProps to TopoCompatProps to make this structure
> > more generic for both smp topology and hybrid topology.
> >
> > Signed-off-by: Zhao Liu <zhao1.liu@intel.com>
> > ---
> > include/hw/boards.h | 15 +++++++++++----
> > 1 file changed, 11 insertions(+), 4 deletions(-)
> >
> > diff --git a/include/hw/boards.h b/include/hw/boards.h
> > index 34ec035b5c9f..17be3485e823 100644
> > --- a/include/hw/boards.h
> > +++ b/include/hw/boards.h
> > @@ -127,19 +127,26 @@ typedef struct {
> > } CPUArchIdList;
> > /**
> > - * SMPCompatProps:
> > - * @prefer_sockets - whether sockets are preferred over cores in smp
> > parsing
> > + * TopoCompatProps:
> > + * @hybrid_support - whether hybrid cpu topology are supported by machine.
> inconsistent with the name in the definition below.
Thanks! Will fix.
> > + * Note that hybrid cpu topology requires to specify the
> > + * topology of each core so that there will no longer be
> > + * a default core topology, thus prefer_sockets won't
> > work
> > + * when hybrid_support is enabled.
> > + * @prefer_sockets - whether sockets are preferred over cores in smp
> > parsing.
> > + * Not work when hybrid_support is enabled.
> > * @dies_supported - whether dies are supported by the machine
> > * @clusters_supported - whether clusters are supported by the machine
> > * @has_clusters - whether clusters are explicitly specified in the user
> > * provided SMP configuration
> > */
> > typedef struct {
> > + bool hybrid_supported;
> > bool prefer_sockets;
> > bool dies_supported;
> > bool clusters_supported;
> > bool has_clusters;
> > -} SMPCompatProps;
> > +} TopoCompatProps;
> Also here. "Rename SMPCompatProps to TopoCompatProps and
> move it to cpu-topology.h and adapt the code" should be organized
> in one or more separate patches, being pre-patches together with
> the conversion of CpuTopology before.
Do you think TopoCompatProps/SMPCompatProps should also be moved
into cpu-topology.h? It seems that SMPCompatProps is a collection
of properties of MachineClass.
> And put the "hybrid_supported"
> extension into another patch. Would this make it easier to review?
Yes, I agree. Thanks!
Zhao
>
> Thanks,
> Yanan
> > /**
> > * MachineClass:
> > @@ -281,7 +288,7 @@ struct MachineClass {
> > bool nvdimm_supported;
> > bool numa_mem_supported;
> > bool auto_enable_numa;
> > - SMPCompatProps smp_props;
> > + TopoCompatProps smp_props;
> > const char *default_ram_id;
> > HotplugHandler *(*get_hotplug_handler)(MachineState *machine,
>
- [RFC 37/52] i386: Update X86CPUTopoIDs generating rule for hybrid topology, (continued)
[RFC 40/52] qapi: Introduce hybrid options, Zhao Liu, 2023/02/13
[RFC 39/52] i386/cpu: Add Intel hybrid related CPUID support, Zhao Liu, 2023/02/13
[RFC 43/52] hw/machine: Rename MachineClass.smp_props to MachineClass.topo_props, Zhao Liu, 2023/02/13
[RFC 44/52] machine: Add "-hybrid" parsing rule, Zhao Liu, 2023/02/13
[RFC 45/52] hw/machine: Add hybrid cpu topology validation, Zhao Liu, 2023/02/13
[RFC 47/52] hw/machine: Use opts_visitor to parse hybrid topo, Zhao Liu, 2023/02/13
[RFC 46/52] hw/machine: build core level hybrid topology form HybridCorePack, Zhao Liu, 2023/02/13
[RFC 48/52] machine: Support "-hybrid" command, Zhao Liu, 2023/02/13