Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 7 Sep 2020 10:27:17 +0100 | From | Mel Gorman <> | Subject | Re: [PATCH] sched/fair: use dst group while checking imbalance for NUMA balancer |
| |
On Mon, Sep 07, 2020 at 07:27:08PM +1200, Barry Song wrote: > Something is wrong. In find_busiest_group(), we are checking if src has > higher load, however, in task_numa_find_cpu(), we are checking if dst > will have higher load after balancing. It seems it is not sensible to > check src. > It maybe cause wrong imbalance value, for example, if > dst_running = env->dst_stats.nr_running + 1 results in 3 or above, and > src_running = env->src_stats.nr_running - 1 results in 1; > The current code is thinking imbalance as 0 since src_running is smaller > than 2. > This is inconsistent with load balancer. >
It checks the conditions if the move was to happen. Have you evaluated this for a NUMA balancing load and confirmed it a) balances properly and b) does not increase the scan rate trying to "fix" the problem?
-- Mel Gorman SUSE Labs
| ![\](/images/icornerr.gif) |