All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrea Righi <arighi@nvidia.com>
To: Christian Loehle <christian.loehle@arm.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>,
	Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Dietmar Eggemann <dietmar.eggemann@arm.com>,
	Steven Rostedt <rostedt@goodmis.org>,
	Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
	Valentin Schneider <vschneid@redhat.com>,
	Joel Fernandes <joelagnelf@nvidia.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] sched/fair: Prefer fully-idle SMT cores in asym-capacity idle selection
Date: Wed, 18 Mar 2026 18:09:01 +0100	[thread overview]
Message-ID: <abrcLSDDOkNZrpML@gpd4> (raw)
In-Reply-To: <4830a5aa-0682-4501-af92-8a2e7858b1d3@arm.com>

Hi Christian,

On Wed, Mar 18, 2026 at 03:43:26PM +0000, Christian Loehle wrote:
> On 3/18/26 10:31, Andrea Righi wrote:
> > Hi Vincent,
> > 
> > On Wed, Mar 18, 2026 at 10:41:15AM +0100, Vincent Guittot wrote:
> >> On Wed, 18 Mar 2026 at 10:22, Andrea Righi <arighi@nvidia.com> wrote:
> >>>
> >>> On systems with asymmetric CPU capacity (e.g., ACPI/CPPC reporting
> >>> different per-core frequencies), the wakeup path uses
> >>> select_idle_capacity() and prioritizes idle CPUs with higher capacity
> >>> for better task placement. However, when those CPUs belong to SMT cores,
> >>
> >> Interesting, which kind of system has both SMT and SD_ASYM_CPUCAPACITY
> >> ? I thought both were never set simultaneously and SD_ASYM_PACKING was
> >> used for system involving SMT like x86
> > 
> > It's an NVIDIA platform (not publicly available yet), where the firmware
> > exposes different CPU capacities and has SMT enabled, so both
> > SD_ASYM_CPUCAPACITY and SMT are present. I'm not sure whether the final
> > firmware release will keep this exact configuration (there's a good chance
> > it will), so I'm targeting it to be prepared.
> 
> 
> Andrea,
> that makes me think, I've played with a nvidia grace available to me recently,
> which sets slightly different CPPC highest_perf values (~2%) which automatically
> will set SD_ASYM_CPUCAPACITY and run the entire capacity-aware scheduling
> machinery for really almost negligible capacity differences, where it's
> questionable how sensible that is.

That looks like the same system that I've been working with. I agree that
treating small CPPC differences as full asymmetry can be a bit overkill.

I've been experimenting with flattening the capacities (to force the
"regular" idle CPU selection policy), which performs better than the
current asym-capacity CPU selection. However, adding the SMT awareness to
the asym-capacity, seems to give a consistent +2-3% (same set of
CPU-intensive benchmarks) compared to flatening alone, which is not bad.

> I have an arm64 + CPPC implementation for asym-packing for this machine, maybe
> we can reuse that for here too?

Sure, that sounds interesting, if it's available somewhere I'd be happy to
do some testing.

Thanks,
-Andrea

  reply	other threads:[~2026-03-18 17:09 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-18  9:22 [PATCH] sched/fair: Prefer fully-idle SMT cores in asym-capacity idle selection Andrea Righi
2026-03-18  9:41 ` Vincent Guittot
2026-03-18 10:31   ` Andrea Righi
2026-03-18 15:43     ` Christian Loehle
2026-03-18 17:09       ` Andrea Righi [this message]
2026-03-19  7:20         ` Vincent Guittot
2026-03-19  8:45           ` Andrea Righi
2026-03-19 11:58         ` Christian Loehle
2026-03-19 14:00           ` Andrea Righi
2026-03-19  7:17     ` Vincent Guittot
2026-03-19 11:11       ` Andrea Righi

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=abrcLSDDOkNZrpML@gpd4 \
    --to=arighi@nvidia.com \
    --cc=bsegall@google.com \
    --cc=christian.loehle@arm.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=joelagnelf@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=vincent.guittot@linaro.org \
    --cc=vschneid@redhat.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.