Messages in this thread | | | From | Valentin Schneider <> | Subject | Re: [PATCH 3/3 v2] sched/fair: reduce cases for active balance | Date | Thu, 07 Jan 2021 17:40:11 +0000 |
| |
On 07/01/21 13:20, Vincent Guittot wrote: > On Thu, 7 Jan 2021 at 12:26, Valentin Schneider > <valentin.schneider@arm.com> wrote: >> > @@ -9499,13 +9499,32 @@ asym_active_balance(struct lb_env *env) >> > } >> > >> > static inline bool >> > -voluntary_active_balance(struct lb_env *env) >> > +imbalanced_active_balance(struct lb_env *env) >> > +{ >> > + struct sched_domain *sd = env->sd; >> > + >> > + /* >> > + * The imbalanced case includes the case of pinned tasks preventing a fair >> > + * distribution of the load on the system but also the even distribution of the >> > + * threads on a system with spare capacity >> > + */ >> >> Do you mean s/imbalanced/migrate_task/? This part here will affect >> group_imbalanced, group_asym_packing, and some others. > > I really mean the imbalanced case which refers to the function name > and includes: > - the pinned tasks case aka group_imbalanced and which is the primary > target of this function ( which explains its name) > - but also the case where we want to evenly spread tasks on system > with spare capacity and removed this imbalance >
But can't this also affect other group_types? calculate_imbalance() can set
env->migration_type = migrate_task;
for
busiest->group_type > group_fully_busy
| |