On Wed, Oct 02, 2024 at 11:26:27AM -0400, Mathieu Desnoyers wrote: > On 2024-10-02 16:09, Paul E. McKenney wrote: > > On Tue, Oct 01, 2024 at 09:02:01PM -0400, Mathieu Desnoyers wrote: > > > Hazard pointers appear to be a good fit for replacing refcount based lazy > > > active mm tracking. > > > > > > Highlight: > > > > > > will-it-scale context_switch1_threads > > > > > > nr threads (-t) speedup > > > 24 +3% > > > 48 +12% > > > 96 +21% > > > 192 +28% > > > > Impressive!!! > > > > I have to ask... Any data for smaller numbers of CPUs? > > Sure, but they are far less exciting ;-)
How many CPUs in the system under test? > nr threads (-t) speedup > 1 -0.2% > 2 +0.4% > 3 +0.2% > 6 +0.6% > 12 +0.8% > 24 +3% > 48 +12% > 96 +21% > 192 +28% > 384 +4% > 768 -0.6% > > Thanks, > > Mathieu > > > > > Thanx, Paul > > > > > I'm curious to see what the build bots have to say about this. > > > > > > This series applies on top of v6.11.1. > > > > > > Signed-off-by: Mathieu Desnoyers <[email protected]> > > > Cc: Nicholas Piggin <[email protected]> > > > Cc: Michael Ellerman <[email protected]> > > > Cc: Greg Kroah-Hartman <[email protected]> > > > Cc: Sebastian Andrzej Siewior <[email protected]> > > > Cc: "Paul E. McKenney" <[email protected]> > > > Cc: Will Deacon <[email protected]> > > > Cc: Boqun Feng <[email protected]> > > > Cc: Alan Stern <[email protected]> > > > Cc: John Stultz <[email protected]> > > > Cc: Neeraj Upadhyay <[email protected]> > > > Cc: Boqun Feng <[email protected]> > > > Cc: Frederic Weisbecker <[email protected]> > > > Cc: Joel Fernandes <[email protected]> > > > Cc: Josh Triplett <[email protected]> > > > Cc: Uladzislau Rezki <[email protected]> > > > Cc: Steven Rostedt <[email protected]> > > > Cc: Lai Jiangshan <[email protected]> > > > Cc: Zqiang <[email protected]> > > > Cc: Ingo Molnar <[email protected]> > > > Cc: Waiman Long <[email protected]> > > > Cc: Mark Rutland <[email protected]> > > > Cc: Thomas Gleixner <[email protected]> > > > Cc: Vlastimil Babka <[email protected]> > > > Cc: [email protected] > > > Cc: Mateusz Guzik <[email protected]> > > > Cc: Jonas Oberhauser <[email protected]> > > > Cc: [email protected] > > > Cc: [email protected] > > > Cc: [email protected] > > > > > > Mathieu Desnoyers (4): > > > compiler.h: Introduce ptr_eq() to preserve address dependency > > > Documentation: RCU: Refer to ptr_eq() > > > hp: Implement Hazard Pointers > > > sched+mm: Use hazard pointers to track lazy active mm existence > > > > > > Documentation/RCU/rcu_dereference.rst | 38 ++++++- > > > Documentation/mm/active_mm.rst | 9 +- > > > arch/Kconfig | 32 ------ > > > arch/powerpc/Kconfig | 1 - > > > arch/powerpc/mm/book3s64/radix_tlb.c | 23 +--- > > > include/linux/compiler.h | 63 +++++++++++ > > > include/linux/hp.h | 154 ++++++++++++++++++++++++++ > > > include/linux/mm_types.h | 3 - > > > include/linux/sched/mm.h | 71 +++++------- > > > kernel/Makefile | 2 +- > > > kernel/exit.c | 4 +- > > > kernel/fork.c | 47 ++------ > > > kernel/hp.c | 46 ++++++++ > > > kernel/sched/sched.h | 8 +- > > > lib/Kconfig.debug | 10 -- > > > 15 files changed, 346 insertions(+), 165 deletions(-) > > > create mode 100644 include/linux/hp.h > > > create mode 100644 kernel/hp.c > > > > > > -- > > > 2.39.2 > > -- > Mathieu Desnoyers > EfficiOS Inc. > https://www.efficios.com > >

