mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Shrikanth Hegde <sshegde@linux.ibm.com>
To: Andrea Righi <arighi@nvidia.com>, Mete Durlu <meted@linux.ibm.com>
Cc: Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Juri Lelli <juri.lelli@redhat.com>,
	Vincent Guittot <vincent.guittot@linaro.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>,
	K Prateek Nayak <kprateek.nayak@amd.com>,
	Heiko Carstens <hca@linux.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Alexander Gordeev <agordeev@linux.ibm.com>,
	Christian Borntraeger <borntraeger@linux.ibm.com>,
	Sven Schnelle <svens@linux.ibm.com>,
	Tim Chen <tim.c.chen@linux.intel.com>,
	Chen Yu <yu.c.chen@intel.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>,
	linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org
Subject: Re: [PATCH RFC 0/2] sched: Introduce idle SMT priority for asymmetric capacity systems
Date: Fri, 9 Oct 2026 21:05:06 +0530	[thread overview]
Message-ID: <effe96a4-c995-4da4-aac6-bef195df36c2@linux.ibm.com> (raw)
In-Reply-To: <askERc5Xa9NhAfk_@gpd4>



On 10/9/26 8:42 PM, Andrea Righi wrote:
> On Thu, Oct 08, 2026 at 09:14:49PM +0530, Shrikanth Hegde wrote:
> ...
>>>>> That might let us preserve the general preference for fully idle SMT cores while
>>>>> searching in this order: fully idle preferred cores, idle SMT threads on
>>>>> preferred cores, then non-preferred cores. This current patch series seems to
>>>>> drop the first distinction, allowing a partially idle preferred core to win even
>>>>> when another preferred core is fully idle.
>>>>>
>>>>> This would need to coexist with the steal governor's stronger use of
>>>>> cpu_preferred_mask, so I'm suggesting it as a potential direction to explore
>>>>> rather than a drop-in replacement.
>>>
>>> I think this makes a lot of sense. An approach to first fill preferred
>>> CPUs before spilling to the non-preferred cores until contention
>>> forces the evacuation of non-prefered CPUs.
>>
>> Well, when we see steal time, it usually means there is high contention and
>> we are using more vCPUs at this moment than possible.
>> So we mark them as non-preferred. Note that they are idle cpus. But non-preferred.
>>
>> That means preferred CPUs may have more than 1 task. If we spill over if there
>> is idle non-preferred CPUs, we will be back to square one. No?
> 
> I agree that CPUs excluded by the steal governor should remain avoided even when
> all preferred CPUs are busy.
> 
> I'm wondering if we should have two levels: cpu_preferred_mask acting as a hard
> affinity constraint and an entitlement-based soft affinity within that mask? The

That not what entitlement usually means. At least not PowerVM. when one creates VM,
they assign VP=Virtual Cores and EC=Entitled Cores. and Hypervisor ensure at least EC
worth of cores are always assigned to that VM. There is no need of priority within that
entitlement.

> soft affinity would prefer high-entitlement CPUs: first fully idle cores, then
> idle SMT siblings. Once those CPUs are busy, tasks could spill onto

I think when one has high steal time and hence reduced preferred CPUs, there will
likely be no fully idle cores within preferred CPUs.

Note that current logic takes out last set of CPUs and find_new_ilb iterates from
the beginning. So if there is idle core within the preferred CPUs, it will be chosen.

> lower-entitlement CPUs still inside cpu_preferred_mask, again preferring fully
> idle cores over idle SMT siblings. If all CPUs inside cpu_preferred_mask are
> busy, tasks would queue there. The soft affinity would never override the
> governor's restriction by spilling onto CPUs it excluded due to contention.
> 
As we were discussing, as long as threads don't end up on non-preferred CPUs,
we might be okay. With the above, find_new_ilb will becomes very complex IMHO
and I am not sure if it is worth it.

likely what we need is,
- Fully idle preferred Core.
- idle preferred CPU.
- any idle CPU.

  reply	other threads:[~2026-10-09 15:35 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-08  8:30 Mete Durlu
2026-10-08  8:30 ` [PATCH RFC 1/2] kernel/sched: Introduce idle SMT priority Mete Durlu
2026-10-08  8:30 ` [PATCH RFC 2/2] s390/topology: Enable SCHED_IDLE_SMT_PRIO Mete Durlu
2026-10-08 12:10 ` [PATCH RFC 0/2] sched: Introduce idle SMT priority for asymmetric capacity systems Andrea Righi
2026-10-08 14:58   ` Shrikanth Hegde
2026-10-08 15:24     ` Mete Durlu
2026-10-08 15:44       ` Shrikanth Hegde
2026-10-09 15:12         ` Andrea Righi
2026-10-09 15:35           ` Shrikanth Hegde [this message]
2026-10-09 15:32       ` Vincent Guittot
2026-10-08 21:52   ` Tim Chen
2026-10-08 21:29 ` Tim Chen

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=effe96a4-c995-4da4-aac6-bef195df36c2@linux.ibm.com \
    --to=sshegde@linux.ibm.com \
    --cc=agordeev@linux.ibm.com \
    --cc=arighi@nvidia.com \
    --cc=borntraeger@linux.ibm.com \
    --cc=bsegall@google.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=gor@linux.ibm.com \
    --cc=hca@linux.ibm.com \
    --cc=iii@linux.ibm.com \
    --cc=juri.lelli@redhat.com \
    --cc=kprateek.nayak@amd.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=meted@linux.ibm.com \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=svens@linux.ibm.com \
    --cc=tim.c.chen@linux.intel.com \
    --cc=vincent.guittot@linaro.org \
    --cc=vschneid@redhat.com \
    --cc=yu.c.chen@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®