Unverified Commit 8edbf4ae authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!2774 [OLK-5.10] sched/fair: Scan cluster before scanning LLC in wake-up path

Merge Pull Request from: @liujie-248683921 
 
https://gitee.com/openeuler/kernel/issues/I8E8NN
This is the follow-up work to support cluster scheduler. Previously
we have added cluster level in the scheduler for both ARM64[1] and
X86[2] to support load balance between clusters to bring more memory
bandwidth and decrease cache contention. This patchset, on the other
hand, takes care of wake-up path by giving CPUs within the same cluster
a try before scanning the whole LLC to benefit those tasks communicating
with each other.

[1] 778c558f ("sched: Add cluster scheduler level in core and related Kconfig for ARM64")
[2] 66558b73 ("sched: Add cluster scheduler level for x86")

Barry Song (2):
  sched: Add cpus_share_resources API
  sched/fair: Scan cluster before scanning LLC in wake-up path

Yicong Yang (1):
  sched/fair: Use candidate prev/recent_used CPU if scanning failed for
    cluster wakeup

 include/linux/sched/sd_flags.h |  7 ++++
 include/linux/sched/topology.h |  8 ++++-
 kernel/sched/core.c            | 12 +++++++
 kernel/sched/fair.c            | 58 +++++++++++++++++++++++++++++++---
 kernel/sched/sched.h           |  2 ++
 kernel/sched/topology.c        | 25 +++++++++++++++
 6 files changed, 106 insertions(+), 6 deletions(-)

-- 
2.24.0
|主线commit id|patch|回合是否冲突|冲突原因|
|---|---|---|---|
|NA|Revert "sched/fair: Scan cluster before scanning LLC in wake-up path"|是|kernel/sched/topology.c中部分代码的相对位置发生变化|
|NA|Revert "sched: Add per_cpu cluster domain info and cpus_share_lowest_cache API"|是|kernel/sched/core.c中部分代码的相对位置发生变化|
|16d364ba|sched/topology: Introduce sched_group::flags|是|kernel/sched/sched.h中部分代码的相对位置发生变化|
|bf2dc42d|sched/topology: Propagate SMT flags when removing degenerate domain|无|NA|
|4efcc8bc|sched/topology: Align group flags when removing degenerate domain|无|NA|
|b95303e0aeaf|sched: Add cpus_share_resources API|是|include/linux/sched/topology.h和kernel/sched/core.c中部分代码的相对位置发生变化|
|8881e1639f1f|sched/fair: Scan cluster before scanning LLC in wake-up path|是|kernel/sched/fair.c、kernel/sched/sched.h、kernel/sched/topology.c中部分代码的相对位置发生变化;kernel/sched/fair.c存在四处适配5.10的修改|
|22165f61d0c4|sched/fair: Use candidate prev/recent_used CPU if scanning failed for cluster wakeup|是|kernel/sched/fair.c中部分代码的相对位置发生变化|
 
 
Link:https://gitee.com/openeuler/kernel/pulls/2774

 

Reviewed-by: default avatarZucheng Zheng <zhengzucheng@huawei.com>
Signed-off-by: default avatarJialin Zhang <zhangjialin11@huawei.com>
parents b1d93034 b126dff5
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment