Thread (40 messages) flat view 40 messages, 5 authors, 1d ago

Re: [PATCH v4 1/1] powerpc: enable dynamic preemption

From: Shrikanth Hegde <hidden>
Date: 2026-07-31 08:03:15
Also in: lkml

Hi.

On 7/31/26 12:48 PM, Jirka Hladky wrote:
On Fri, Jul 31, 2026 at 7:03 AM Christophe Leroy (CS GROUP)
[off-list ref] wrote:
quoted


Le 30/07/2026 à 19:10, Shrikanth Hegde a écrit :
quoted
Hi Jirka, Paul,


+cc will

On 7/30/26 8:38 PM, Jirka Hladky wrote:
quoted
On Thu, Jul 30, 2026 at 4:53 PM Paul E. McKenney [off-list ref]
wrote:
quoted
But is this really a fundamental RISC cost?  For example, does arm64
see the same performance issues?
We tested arm64 (Ampere Altra Max) with the same controlled
experiment -- two 6.18 kernels, both voluntary, differing only in
PREEMPT_DYNAMIC:

Arch     PREEMPT_DYNAMIC   kill bogo-ops/sec   Delta
-------  ---------------   -----------------   -----
ppc64le  off               108,836
ppc64le  on                 68,197             -37.3%
aarch64  off                 5,538
aarch64  on                  5,082              -8.2%

arm64 sees -8.2% vs ppc64le's -37.3%. So arm64 is affected but
much less severely.
Ouch!. But that's good to know.
Might be a stupid question, but what is your .config ?
Are you sure it doesn't contain CONFIG_DEBUG_PREEMPT ?
I have double-checked that and it's not set:
# CONFIG_DEBUG_PREEMPT is not set

Thanks
Jirka
Coming into numbers, I did notice later, arm64 numbers are almost 20x less.
I believe you are having similar core count or benchmark is same.

But if we compare the time taken for each operations, it tells a different story.
		
	    PREEMPT_DYNAMIC
ppc64le 	off 		108836 ops/s =   9.19 us/op
ppc64le 	on   		68197 ops/s  =  14.66 us/op
delta                                           +5.47 us/op

aarch64 	off   		5538 ops/s = 180.57 us/op
aarch64 	on    		5082 ops/s = 196.77 us/op
delta                         		     +16.20 us/op

PS: I tried porting some of those changes in arm64 to powerpc to split preempt count into
two. but i don;t see much improvement there. If i see get better numbers i will reply with
that.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help