[lkml]   [2022]   [Jun]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH RESEND v4 0/2] sched: Queue task on wakelist in the same llc if the wakee cpu is idle
Wakelist can help avoid cache bouncing and offload the overhead of waker
cpu. So far, using wakelist within the same llc only happens on
WF_ON_CPU, and this limitation could be removed to further improve
wakeup performance. The result of Unixbench Pipe-based Context Switching
can be improved up to ~10%.

The 1st patch introduces a more "correct" way to check whether the wakee
cpu is soon-to-be-idle.

The 2nd patch allows using wakelist in any case when the wakee cpu is
idle or soon-to-be-idle.

Add benchmark results about the 1st patch.
Modify some comments.

Add a patch to fix the check of nr_running.
After that, we can remove WF_ON_CPU to achieve the same purpose.
Thank Valentin and Mel.

Modify commit log to describe key point in detail.
Add more benchmark results on more archs.


Tianchen Ding (2):
sched: Fix the check of nr_running at queue wakelist
sched: Remove the limitation of WF_ON_CPU on wakelist if wakee cpu is

kernel/sched/core.c | 30 ++++++++++++++++++------------
kernel/sched/sched.h | 1 -
2 files changed, 18 insertions(+), 13 deletions(-)


 \ /
  Last update: 2022-06-09 01:35    [W:0.068 / U:0.260 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site