[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z//4FUsm1/jbOTP1@gmail.com>
Date: Wed, 16 Apr 2025 11:33:57 -0700
From: Breno Leitao <leitao@...ian.org>
To: Uladzislau Rezki <urezki@...il.com>
Cc: Boqun Feng <boqun.feng@...il.com>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>, Will Deacon <will@...nel.org>,
Waiman Long <longman@...hat.com>, aeh@...a.com,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
edumazet@...gle.com, jhs@...atatu.com, kernel-team@...a.com,
Erik Lundgren <elundgren@...a.com>,
"Paul E. McKenney" <paulmck@...nel.org>,
Frederic Weisbecker <frederic@...nel.org>,
Neeraj Upadhyay <neeraj.upadhyay@...nel.org>,
Joel Fernandes <joel@...lfernandes.org>, rcu@...r.kernel.org
Subject: Re: [RFC PATCH 0/8] Introduce simple hazard pointers for lockdep
Hello Vlad,
On Wed, Apr 16, 2025 at 05:04:31PM +0200, Uladzislau Rezki wrote:
> On Wed, Apr 16, 2025 at 07:14:04AM -0700, Breno Leitao wrote:
> > Hi Boqun,
> >
> > On Sun, Apr 13, 2025 at 11:00:47PM -0700, Boqun Feng wrote:
> >
> > > Overall it looks promising to me, but I would like to see how it
> > > performs in the environment of Breno. Also as Paul always reminds me:
> > > buggy code usually run faster, so please take a look in case I'm missing
> > > something ;-) Thanks!
> >
> > Thanks for the patchset. I've confirmed that the wins are large on my
> > environment, but, at the same magnitute of synchronize_rcu_expedited().
> >
> > Here are the numbers I got:
> >
> > 6.15-rc1 (upstream)
> > # time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
> > real 0m3.986s
> > user 0m0.001s
> > sys 0m0.093s
> >
> > Your patchset on top of 6.15-rc1
> > # time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
> > real 0m0.072s
> > user 0m0.001s
> > sys 0m0.070s
> >
> >
> > My original proposal of using synchronize_rcu_expedited()[1]
> > # time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
> > real 0m0.074s
> > user 0m0.001s
> > sys 0m0.061s
> >
> > Link: https://lore.kernel.org/all/20250321-lockdep-v1-1-78b732d195fb@debian.org/ [1]
> >
> Could you please also do the test of fist scenario with a regular
> synchronize_rcu() but switch to its faster variant:
>
> echo 1 > /sys/module/rcutree/parameters/rcu_normal_wake_from_gp
>
> and run the test. If you have a time.
Of course, I am more than interesting in this topic. This is what I run:
# /usr/sbin/tc qdisc replace dev eth0 root handle 0x1: mq; time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
real 0m4.150s
user 0m0.001s
sys 0m0.076s
[root@...t2 ~]# echo 1 > /sys/module/rcutree/parameters/rcu_normal_wake_from_gp
[root@...t2 ~]# /usr/sbin/tc qdisc replace dev eth0 root handle 0x1: mq; time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
real 0m4.225s
user 0m0.000s
sys 0m0.106s
[root@...t2 ~]# cat /sys/module/rcutree/parameters/rcu_normal_wake_from_gp
1
[root@...t2 ~]# echo 0 > /sys/module/rcutree/parameters/rcu_normal_wake_from_gp
[root@...t2 ~]# /usr/sbin/tc qdisc replace dev eth0 root handle 0x1: mq; time /usr/sbin/tc qdisc replace dev eth0 root handle 0x1234: mq
real 0m4.152s
user 0m0.001s
sys 0m0.099s
It seems it made very little difference?
Thanks
--breno
Powered by blists - more mailing lists