All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sudeep Holla <sudeep.holla@arm.com>
To: Jeremy Linton <jeremy.linton@arm.com>
Cc: Xiongfeng Wang <wangxiongfeng2@huawei.com>,
	Morten Rasmussen <morten.rasmussen@foss.arm.com>,
	Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
	linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	hanjun.guo@linaro.org, rjw@rjwysocki.net, will.deacon@arm.com,
	catalin.marinas@arm.com, gregkh@linuxfoundation.org,
	viresh.kumar@linaro.org, mark.rutland@arm.com,
	linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org,
	jhugo@codeaurora.org, Jonathan.Zhang@cavium.com, ahs3@redhat.com,
	Jayachandran.Nair@cavium.com, austinwc@codeaurora.org,
	lenb@kernel.org, morten.rasmussen@arm.com,
	dietmar.eggemann@arm.com, Sudeep Holla <sudeep.holla@arm.com>
Subject: Re: [PATCH v5 7/9] arm64: Topology, rename cluster_id
Date: Wed, 3 Jan 2018 17:43:22 +0000	[thread overview]
Message-ID: <20180103174322.GA8787@e107155-lin> (raw)
In-Reply-To: <4ac912cf-927d-5482-9ceb-b497a547fc2e@arm.com>

On Wed, Jan 03, 2018 at 11:32:00AM -0600, Jeremy Linton wrote:
> Hi,
> 
> On 01/03/2018 08:29 AM, Sudeep Holla wrote:
> >
> >On 02/01/18 02:29, Xiongfeng Wang wrote:
> >>Hi,
> >>
> >>On 2017/12/18 20:42, Morten Rasmussen wrote:
> >>>On Fri, Dec 15, 2017 at 10:36:35AM -0600, Jeremy Linton wrote:
> >>>>Hi,
> >>>>
> >>>>On 12/13/2017 12:02 PM, Lorenzo Pieralisi wrote:
> >>>>>[+Morten, Dietmar]
> >>>>>
> >>>>>$SUBJECT should be:
> >>>>>
> >>>>>arm64: topology: rename cluster_id
> >>>>
> >>[cut]
> >>>>
> >>I think we still need the information describing which cores are in one
> >>cluster. Many arm64 chips have the architecture core/cluster/socket. Cores
> >>in one cluster may share a same L2 cache. That information can be used to
> >>build the sched_domain. If we put cores in one cluster in one sched_domain,
> >>the performance will be better.(please see kernel/sched/topology.c:1197,
> >>cpu_coregroup_mask() uses 'core_sibling' to build a multi-core
> >>sched_domain).
> >
> >We get all the cache information from DT/ACPI PPTT(mainly topology) and now
> >even the geometry. So ideally, the sharing information must come from that.
> >Any other solution might end up in conflict if DT/PPTT and that mismatch.
> >
> >>So I think we still need variable to record which cores are in one
> >>sched_domain for future use.
> >
> >I tend to say no, at-least not as is.
> >
> 
> Well, either way, with DynamiQ (and a55/a75) the cores have private L2's,
> which means that the cluster sharing is happening at what is then the L3
> level. So, the code I had in earlier versions would have needed tweaks to
> deal with that anyway.
>

Indeed.

> IMHO, if we want to detect this kind of sharing for future scheduling
> domains, it should probably be done independent of PPTT/DT/MIPDR by picking
> out shared cache levels from struct cacheinfo *. Which makes that change
> unrelated to the basic population of cacheinfo and cpu_topology in this
> patchset.
>

Sure, that's what I meant above. i.e. we need to depend on firmware(DT/ACPI)
rather than architected way(which doesn't exist anyways). Since cacheinfo
abstracts DT/ACPI, it sounds right to use that to fetch any information
on cache topology.

--
Regards,
Sudeep


WARNING: multiple messages have this Message-ID (diff)
From: sudeep.holla@arm.com (Sudeep Holla)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 7/9] arm64: Topology, rename cluster_id
Date: Wed, 3 Jan 2018 17:43:22 +0000	[thread overview]
Message-ID: <20180103174322.GA8787@e107155-lin> (raw)
In-Reply-To: <4ac912cf-927d-5482-9ceb-b497a547fc2e@arm.com>

On Wed, Jan 03, 2018 at 11:32:00AM -0600, Jeremy Linton wrote:
> Hi,
> 
> On 01/03/2018 08:29 AM, Sudeep Holla wrote:
> >
> >On 02/01/18 02:29, Xiongfeng Wang wrote:
> >>Hi,
> >>
> >>On 2017/12/18 20:42, Morten Rasmussen wrote:
> >>>On Fri, Dec 15, 2017 at 10:36:35AM -0600, Jeremy Linton wrote:
> >>>>Hi,
> >>>>
> >>>>On 12/13/2017 12:02 PM, Lorenzo Pieralisi wrote:
> >>>>>[+Morten, Dietmar]
> >>>>>
> >>>>>$SUBJECT should be:
> >>>>>
> >>>>>arm64: topology: rename cluster_id
> >>>>
> >>[cut]
> >>>>
> >>I think we still need the information describing which cores are in one
> >>cluster. Many arm64 chips have the architecture core/cluster/socket. Cores
> >>in one cluster may share a same L2 cache. That information can be used to
> >>build the sched_domain. If we put cores in one cluster in one sched_domain,
> >>the performance will be better.(please see kernel/sched/topology.c:1197,
> >>cpu_coregroup_mask() uses 'core_sibling' to build a multi-core
> >>sched_domain).
> >
> >We get all the cache information from DT/ACPI PPTT(mainly topology) and now
> >even the geometry. So ideally, the sharing information must come from that.
> >Any other solution might end up in conflict if DT/PPTT and that mismatch.
> >
> >>So I think we still need variable to record which cores are in one
> >>sched_domain for future use.
> >
> >I tend to say no, at-least not as is.
> >
> 
> Well, either way, with DynamiQ (and a55/a75) the cores have private L2's,
> which means that the cluster sharing is happening at what is then the L3
> level. So, the code I had in earlier versions would have needed tweaks to
> deal with that anyway.
>

Indeed.

> IMHO, if we want to detect this kind of sharing for future scheduling
> domains, it should probably be done independent of PPTT/DT/MIPDR by picking
> out shared cache levels from struct cacheinfo *. Which makes that change
> unrelated to the basic population of cacheinfo and cpu_topology in this
> patchset.
>

Sure, that's what I meant above. i.e. we need to depend on firmware(DT/ACPI)
rather than architected way(which doesn't exist anyways). Since cacheinfo
abstracts DT/ACPI, it sounds right to use that to fetch any information
on cache topology.

--
Regards,
Sudeep

  reply	other threads:[~2018-01-03 17:43 UTC|newest]

Thread overview: 113+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-01 22:23 [PATCH v5 0/9] Support PPTT for ARM64 Jeremy Linton
2017-12-01 22:23 ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 1/9] arm64/acpi: Create arch specific cpu to acpi id helper Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 2/9] ACPI/PPTT: Add Processor Properties Topology Table parsing Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-12  1:10   ` Rafael J. Wysocki
2017-12-12  1:10     ` Rafael J. Wysocki
2017-12-01 22:23 ` [PATCH v5 3/9] ACPI: Enable PPTT support on ARM64 Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-13 17:26   ` Lorenzo Pieralisi
2017-12-13 17:26     ` Lorenzo Pieralisi
2018-01-05 21:58     ` Jeremy Linton
2018-01-05 21:58       ` Jeremy Linton
2018-01-05 22:07       ` Rafael J. Wysocki
2018-01-05 22:07         ` Rafael J. Wysocki
2017-12-01 22:23 ` [PATCH v5 4/9] drivers: base cacheinfo: Add support for ACPI based firmware tables Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-12  1:11   ` Rafael J. Wysocki
2017-12-12  1:11     ` Rafael J. Wysocki
2017-12-12 17:03     ` Jeremy Linton
2017-12-12 17:03       ` Jeremy Linton
2017-12-12 17:25       ` Rafael J. Wysocki
2017-12-12 17:25         ` Rafael J. Wysocki
2017-12-12 17:25         ` Rafael J. Wysocki
2017-12-12 22:55         ` Jeremy Linton
2017-12-12 22:55           ` Jeremy Linton
2017-12-12 22:55           ` Jeremy Linton
2017-12-12 23:02           ` Rafael J. Wysocki
2017-12-12 23:02             ` Rafael J. Wysocki
2017-12-12 23:02             ` Rafael J. Wysocki
2017-12-12 23:37             ` Jeremy Linton
2017-12-12 23:37               ` Jeremy Linton
2017-12-12 23:37               ` Jeremy Linton
2017-12-12 23:41               ` Rafael J. Wysocki
2017-12-12 23:41                 ` Rafael J. Wysocki
2017-12-12 23:41                 ` Rafael J. Wysocki
2018-01-03 14:21               ` Sudeep Holla
2018-01-03 14:21                 ` Sudeep Holla
2018-01-03 14:21                 ` Sudeep Holla
2018-01-04 11:46                 ` Sudeep Holla
2018-01-04 11:46                   ` Sudeep Holla
2018-01-04 11:46                   ` Sudeep Holla
2017-12-01 22:23 ` [PATCH v5 5/9] arm64: " Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 6/9] ACPI/PPTT: Add topology parsing code Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-12  1:12   ` Rafael J. Wysocki
2017-12-12  1:12     ` Rafael J. Wysocki
2017-12-12 16:13     ` Jeremy Linton
2017-12-12 16:13       ` Jeremy Linton
2017-12-13 17:38       ` Lorenzo Pieralisi
2017-12-13 17:38         ` Lorenzo Pieralisi
2017-12-13 22:28         ` Rafael J. Wysocki
2017-12-13 22:28           ` Rafael J. Wysocki
2017-12-13 22:28           ` Rafael J. Wysocki
2017-12-13 23:06           ` Jeremy Linton
2017-12-13 23:06             ` Jeremy Linton
2017-12-13 23:09             ` Rafael J. Wysocki
2017-12-13 23:09               ` Rafael J. Wysocki
2017-12-13 23:09               ` Rafael J. Wysocki
2018-01-03  8:49               ` vkilari
2018-01-03  8:49                 ` vkilari
2018-01-03  8:49                 ` vkilari at codeaurora.org
2018-01-03 16:57                 ` Jeremy Linton
2018-01-03 16:57                   ` Jeremy Linton
2018-01-03 16:57                   ` Jeremy Linton
2018-01-04  6:48                   ` vkilari
2018-01-04  6:48                     ` vkilari
2018-01-04  6:48                     ` vkilari at codeaurora.org
2018-01-04 17:50                     ` Jeremy Linton
2018-01-04 17:50                       ` Jeremy Linton
2018-01-04 17:50                       ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 7/9] arm64: Topology, rename cluster_id Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-13 18:02   ` Lorenzo Pieralisi
2017-12-13 18:02     ` Lorenzo Pieralisi
2017-12-15 16:36     ` Jeremy Linton
2017-12-15 16:36       ` Jeremy Linton
2017-12-18 12:42       ` Morten Rasmussen
2017-12-18 12:42         ` Morten Rasmussen
2017-12-18 15:47         ` Lorenzo Pieralisi
2017-12-18 15:47           ` Lorenzo Pieralisi
2017-12-19  9:38           ` Morten Rasmussen
2017-12-19  9:38             ` Morten Rasmussen
2018-01-02  2:29         ` Xiongfeng Wang
2018-01-02  2:29           ` Xiongfeng Wang
2018-01-02  2:29           ` Xiongfeng Wang
2018-01-02 11:30           ` Morten Rasmussen
2018-01-02 11:30             ` Morten Rasmussen
2018-01-03 14:29           ` Sudeep Holla
2018-01-03 14:29             ` Sudeep Holla
2018-01-03 17:32             ` Jeremy Linton
2018-01-03 17:32               ` Jeremy Linton
2018-01-03 17:43               ` Sudeep Holla [this message]
2018-01-03 17:43                 ` Sudeep Holla
2018-01-04  3:59               ` Xiongfeng Wang
2018-01-04  3:59                 ` Xiongfeng Wang
2018-01-04  3:59                 ` Xiongfeng Wang
2018-01-04 18:00                 ` Jeremy Linton
2018-01-04 18:00                   ` Jeremy Linton
2018-01-04  4:14               ` Xiongfeng Wang
2018-01-04  4:14                 ` Xiongfeng Wang
2018-01-04  4:14                 ` Xiongfeng Wang
2017-12-01 22:23 ` [PATCH v5 8/9] arm64: topology: Enable ACPI/PPTT based CPU topology Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton
2017-12-13 18:22   ` Lorenzo Pieralisi
2017-12-13 18:22     ` Lorenzo Pieralisi
2017-12-15 17:42     ` Jeremy Linton
2017-12-15 17:42       ` Jeremy Linton
2017-12-01 22:23 ` [PATCH v5 9/9] ACPI: Add PPTT to injectable table list Jeremy Linton
2017-12-01 22:23   ` Jeremy Linton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180103174322.GA8787@e107155-lin \
    --to=sudeep.holla@arm.com \
    --cc=Jayachandran.Nair@cavium.com \
    --cc=Jonathan.Zhang@cavium.com \
    --cc=ahs3@redhat.com \
    --cc=austinwc@codeaurora.org \
    --cc=catalin.marinas@arm.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hanjun.guo@linaro.org \
    --cc=jeremy.linton@arm.com \
    --cc=jhugo@codeaurora.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=mark.rutland@arm.com \
    --cc=morten.rasmussen@arm.com \
    --cc=morten.rasmussen@foss.arm.com \
    --cc=rjw@rjwysocki.net \
    --cc=viresh.kumar@linaro.org \
    --cc=wangxiongfeng2@huawei.com \
    --cc=will.deacon@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.