On Thu, Oct 12, 2023 at 03:48:04PM +0800, Huang, Ying wrote: > " > On a 2-socket Intel server with 224 logical CPU, we run 8 kbuild > instances in parallel (each with `make -j 28`) in 8 cgroup. This > simulates the kbuild server that is used by 0-Day kbuild service. > With the patch, The number of pages allocated from zone (instead of > from PCP) decreases 21.4%. > " > > I also showed the performance number for each step of optimization as > follows (copied from the above patchset V2 link). > > " > build time lock contend% free_high alloc_zone > ---------- ---------- --------- ---------- > base 100.0 13.5 100.0 100.0 > patch1 99.2 10.6 19.2 95.6 > patch3 99.2 11.7 7.1 95.6 > patch5 98.4 10.0 8.2 97.1 > patch7 94.9 0.7 3.0 19.0 > patch9 94.9 0.6 2.7 15.0 <-- this patch > patch10 94.9 0.9 8.8 18.6 > " > > Although I think the patch is helpful via avoiding the unnecessary > pcp->high decaying, thus reducing the zone lock contention. There's no > visible benchmark score change for the patch. > Thanks! Given that it's another PCP field with an update in a relatively hot path, I would suggest dropping this patch entirely if it does not affect performance. It has the risk of being a magical heuristic that we forget later whether it's even worthwhile. -- Mel Gorman SUSE Labs