On 2023/11/1 21:59, Vlastimil Babka wrote: >> 3. Testing >> ========== >> We just did some simple testing on a server with 128 CPUs (2 nodes) to >> compare performance for now. >> >> - perf bench sched messaging -g 5 -t -l 100000 >> baseline RFC >> 7.042s 6.966s >> 7.022s 7.045s >> 7.054s 6.985s >> >> - stress-ng --rawpkt 128 --rawpkt-ops 100000000 >> baseline RFC >> 2.42s 2.15s >> 2.45s 2.16s >> 2.44s 2.17s > > Looks like these numbers are carried over from the first RFC. Could you > please retest with v4 as there were some bigger changes (i.e. getting > rid of acquire_slab()). > > Otherwise I think v5 can drop "RFC" and will add it to slab tree after > the merge window and 6.7-rc1. Thanks! Ah, yes, I will retest v5 and update the numbers today. Thanks! > >> It shows above there is about 10% improvement on stress-ng rawpkt >> testcase, although no much improvement on perf sched bench testcase. >> >> Thanks for any comment and code review! >> >> Chengming Zhou (9): >> slub: Reflow ___slab_alloc() >> slub: Change get_partial() interfaces to return slab >> slub: Keep track of whether slub is on the per-node partial list >> slub: Prepare __slab_free() for unfrozen partial slab out of node >> partial list >> slub: Introduce freeze_slab() >> slub: Delay freezing of partial slabs >> slub: Optimize deactivate_slab() >> slub: Rename all *unfreeze_partials* functions to *put_partials* >> slub: Update frozen slabs documentations in the source >> >> mm/slub.c | 381 ++++++++++++++++++++++++++---------------------------- >> 1 file changed, 180 insertions(+), 201 deletions(-) >>