On Tue, Aug 30, 2022 at 12:53:24PM +0200, Frederic Weisbecker wrote: > On Mon, Aug 29, 2022 at 01:42:02PM -0700, Paul E. McKenney wrote: > > On Mon, Aug 29, 2022 at 04:36:40PM -0400, Joel Fernandes wrote: > > > On Mon, Aug 29, 2022 at 3:46 PM Frederic Weisbecker <frederic@xxxxxxxxxx> wrote: > > > > On Mon, Aug 29, 2022 at 12:45:40PM -0400, Joel Fernandes wrote: > > > > > On 8/29/2022 9:40 AM, Frederic Weisbecker wrote: > > > > [ . . . ] > > > > > > > > 2) NOCB implies performance issues. > > > > > > > > > > Which kinds of? There is slightly worse boot times, but I'm guessing that's do > > > > > with the extra scheduling overhead of the extra threads which is usually not a > > > > > problem except that RCU is used in the critical path of boot up (on ChromeOS). > > > > > > > > I never measured it myself but executing callbacks on another CPUs, with > > > > context switches and locking can only involve significant performance issues if callbacks > > > > are frequent. So it's a tradeoff between power and performance. > > > > > > In my testing of benchmarks on real systems with 8-16 CPUs, the > > > performance hit is down in the noise. It is possible though that maybe > > > one can write a non-realistic synthetic test to force the performance > > > issues, but I've not seen it in the real world. Maybe on > > > networking-heavy servers with lots of cores, you'll see it but their > > > batteries if any would be pretty big :-). > > > > To Frederic's point, if you have enough servers, even a 1% decrease in > > power consumption is a very big deal. ;-) > > The world has enough servers, for that matters ;-) True enough! Now you need only demonstrate that call_rcu_lazy() for !rcu_nocbs servers would actually deliver that 1%. ;-) Thanx, Paul