Skip to content

load balancing fixes

[email protected] lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest2 patches 15 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2sched: fix and clean up calculate_imbalancekernel/sched/fair.c+8 -2514 replies
2/2sched: make update_sd_pick_busiest return true on a busier sdkernel/sched/fair.c+28 -61 reply

Reviews trailers per patch

1 of 2 patches has a Reviewed-by or Acked-by.

PatchMichael Neuling
1/2
2/2A-b A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 0/2] load balancing fixes

Currently update_sd_pick_busiest only identifies the busiest sd that is either overloaded, or has a group imbalance. When no sd is imbalanced or overloaded, the load balancer fails to find the busiest domain.

This breaks load balancing between domains that are not overloaded, in the !SD_ASYM_PACKING case. This patch makes update_sd_pick_busiest return true when the busiest sd yet is encountered.

Groups are ranked in the order overloaded > imbalanced > other, with higher ranked groups getting priority even when their load is lower. This is necessary due to the possibility of unequal capacities and cpumasks between domains within a sched group.

Calculate_imbalance knows how to deal with the situation where a less loaded group is picked, but will only do so when sgs->group_imb is set. This handling needs to be extended to all situations where the busiest load is below the average load.