On 2020/11/18 20:06, Valentin Schneider wrote: > > On 16/11/20 20:04, Aubrey Li wrote: >> From: Aubrey Li <aubrey...@intel.com> >> >> Add idle cpumask to track idle cpus in sched domain. When a CPU >> enters idle, if the idle driver indicates to stop tick, this CPU >> is set in the idle cpumask to be a wakeup target. And if the CPU >> is not in idle, the CPU is cleared in idle cpumask during scheduler >> tick to ratelimit idle cpumask update. >> >> When a task wakes up to select an idle cpu, scanning idle cpumask >> has low cost than scanning all the cpus in last level cache domain, >> especially when the system is heavily loaded. >> >> Benchmarks were tested on a x86 4 socket system with 24 cores per >> socket and 2 hyperthreads per core, total 192 CPUs. Hackbench and >> schbench have no notable change, uperf has: >> >> uperf throughput: netperf workload, tcp_nodelay, r/w size = 90 >> >> threads baseline-avg %std patch-avg %std >> 96 1 0.83 1.23 3.27 >> 144 1 1.03 1.67 2.67 >> 192 1 0.69 1.81 3.59 >> 240 1 2.84 1.51 2.67 >> >> Cc: Mel Gorman <mgor...@suse.de> >> Cc: Vincent Guittot <vincent.guit...@linaro.org> >> Cc: Qais Yousef <qais.you...@arm.com> >> Cc: Valentin Schneider <valentin.schnei...@arm.com> >> Cc: Jiang Biao <benbji...@gmail.com> >> Cc: Tim Chen <tim.c.c...@linux.intel.com> >> Signed-off-by: Aubrey Li <aubrey...@linux.intel.com> > > That's missing a v3 -> v4 change summary >
okay, I'll add in the next version soon. Thanks, -Aubrey