[PATCH v2 1/8] arch_topology: Don't set cluster identifier as physical package identifier

Sudeep Holla sudeep.holla at arm.com
Fri May 20 06:13:47 PDT 2022


On Fri, May 20, 2022 at 02:31:24PM +0200, Dietmar Eggemann wrote:
> On 18/05/2022 11:33, Sudeep Holla wrote:
> 
> You say `cluster identifier` which to me refers to
> `cpu_topology[cpu].cluster_id`. But I guess you meant `cluster node`
> from cpu-map DT node?
>

Correct, I am referring to the leaf cluster node identifier in terms
of cpu-map DT node which we now store in cpu_topology[cpu].cluster_id as
part of this series instead of previous cpu_topology[cpu].package_id.

> Otherwise you say we link (1.level) cpu-map cluster nodes to
> `cluster_id\_sibling`? But then (1) we will never support nested
> clusters and (2) why would we need llc support then?
>

(1) Do we have any platforms with nested clusters today ? No phantom
    clusters please as this is info that gets to the userspace and must
    reflect the real hardware. If one exist, then we need to add nested
    cluster if we need to support that hardware. I am not aware of any
    platform in particular DT based one.
(2) LLC was added to support chiplets. IIRC, cpu_coregroup_mask was changed
    to select the smallest of LLC, socket siblings, and NUMA node siblings
    to ensure that the sched domain we build for the MC layer isn't larger
    than the DIE above it or it's shrunk to the socket or NUMA node if LLC
    exist across NUMA node/chiplets.

   But overtime, we have patched cpu_coregroup_mask to workaround things
   which I think is now about to break 🙁.

--
Regards,
Sudeep



More information about the linux-riscv mailing list