From: Mario Limonciello <mario.limonciello@amd.com>
To: Klaus Kusche <klaus.kusche@computerix.info>,
Tim Chen <tim.c.chen@linux.intel.com>,
"Chen, Yu C" <yu.c.chen@intel.com>
Cc: "Badole, Vishal" <Vishal.Badole@amd.com>,
Peter Zijlstra <peterz@infradead.org>,
linux-kernel@vger.kernel.org,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
<x86@kernel.org>,
platform-driver-x86@vger.kernel.org,
K Prateek Nayak <KPrateek.Nayak@amd.com>,
ricardo.neri@intel.com
Subject: Re: Cache-aware scheduling does not work well with amd big/little cores
Date: Wed, 9 Sep 2026 08:19:32 -0500 [thread overview]
Message-ID: <76dba935-1052-4fa9-a70c-16cecdfd12c8@amd.com> (raw)
In-Reply-To: <e17ef3af-c1cd-4360-ba4b-9900ccc36ef6@computerix.info>
On 9/9/26 03:59, Klaus Kusche wrote:
>
> Hello,
>
> On 08/09/2026 23:54, Tim Chen wrote:
>>> I did some quick testing (no perfect benchmark environment,
>>> just checking runtime and CPU consumption with "time").
>>>
>>> I timed a kernel build (-j 24 and full lto, my own .config)
>>> and an application build (also with a lot of parallelism)
>>> with three different kernels:
>>>
>>> a) Cache aware scheduling completely configured off
>>>
>>> b) Cache aware scheduling turned on, but without patch
>>>
>>> c) Cache aware scheduling turned on, with patch
>>>
>>> Big/little scheduling was always on,
>>> Mario's patch was always applied
>>> (without it, results are significantly worse,
>>
>> Sorry, I am a bit confused. You mentioned later the result for (b)
>> and (c) are about the same with or without the patch
>> exposing debugfs (commit c1e7fe5e75ed11fa85368e5a186472afd3858f3a
>> Mario mentioned in another mail).
>> But here you say the result is much worse without Mario's patch.
>> Is Mario's patch the one above or some other patch?
>
> The with/without patch in (b) and (c)
> refers to the patch you sent on 31/08/2026
> ( https://lore.kernel.org/lkml/20260825174112.2580942-1-tim.c.chen@linux.intel.com/ ),
> not to Mario's patch.
>
Just to clarify Mario's patch in this context refers to the fix to
ITMT/debugfs fixes as Klaus doesn't nominally enable debugfs in Kconfig:
eaece4849991d62fcd6f46637c55dcce00e25d70
>>> because I use kernels without debugfs,
>>> so big/little scheduling is off without the patch).
>>>
>>> Results:
>>>
>>> There is no significant difference between b) and c)
>>> (<= 1 % wallclock time)
>>
>> Yes, I don't expect difference between (b) and (c). My
>> understanding is the patch in question is to only
>> expose the default cache aware parameters via debugfs
>> but don't acutally change them.
>>
>>> Sometimes b) is better, sometimes c) is better,
>>> I'd say the differences are below the accuracy of my tests.
>>>
>>> But a) was reproducibly better than b) and c)
>>> w.r.t. wallclock time: 2-2.6 %
>>> It was also very slightly better w.r.t. total kernel CPU seconds.
>>> The results w.r.t. total usermode CPU seconds varied too much.
>>> (I always ran the application build twice,
>>> and for all a), b) and c), the second run consumed
>>> significantly more usermode CPU seconds,
>>> but took a little less wallclock time - I don't know why).
>>
>> Will have to look around to see if we have some similar CPUs
>> as HX-370. My understanding is that the 4 big cores are in
>> one L3 and the 8 small cores are in another L3.
>
> Yes, as far as I know, it has 16 MB L3 cache for the 4 big cores
> and 8 MB L3 cache for the 8 little cores.
>
>> BTW, we have also found two issues with the active load balance
>> paths for CAS that need fixes. You may want to add those patches
>> and see if they are helpful to improve things.
>
> Most likely not within the next few days.
> I'm still on holiday and quite busy:
> Ars Electronica Festival in Linz.
>
>> Active load balance fixes:
>> https://lore.kernel.org/lkml/20260903020656.3793626-1-wanglu.priv@gmail.com/
>> https://lore.kernel.org/lkml/2b0a35122ee615c6fa51076e5d79330e633755ac.camel@linux.intel.com/
>
next prev parent reply other threads:[~2026-09-09 13:19 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-29 15:42 Klaus Kusche
2026-08-31 1:53 ` Mario Limonciello
2026-08-31 2:08 ` Chen, Yu C
2026-08-31 11:24 ` Klaus Kusche
2026-08-31 17:29 ` Tim Chen
2026-08-31 18:49 ` Klaus Kusche
2026-08-31 18:53 ` Mario Limonciello
2026-09-05 15:40 ` Klaus Kusche
2026-09-08 21:54 ` Tim Chen
2026-09-09 8:59 ` Klaus Kusche
2026-09-09 13:19 ` Mario Limonciello [this message]
2026-09-09 19:51 ` Tim Chen
2026-09-10 1:29 ` Chen, Yu C
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=76dba935-1052-4fa9-a70c-16cecdfd12c8@amd.com \
--to=mario.limonciello@amd.com \
--cc=KPrateek.Nayak@amd.com \
--cc=Vishal.Badole@amd.com \
--cc=klaus.kusche@computerix.info \
--cc=linux-kernel@vger.kernel.org \
--cc=peterz@infradead.org \
--cc=platform-driver-x86@vger.kernel.org \
--cc=ricardo.neri@intel.com \
--cc=tim.c.chen@linux.intel.com \
--cc=x86@kernel.org \
--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®