lkml.org 
[lkml]   [2021]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v4] sched,fair: Skip newidle_balance if a wakeup is pending
    On Thu, Apr 22, 2021 at 07:09:46PM +0200, Vincent Guittot wrote:
    > On Thu, 22 Apr 2021 at 19:02, Rik van Riel <riel@surriel.com> wrote:
    > >
    > > The try_to_wake_up function has an optimization where it can queue
    > > a task for wakeup on its previous CPU, if the task is still in the
    > > middle of going to sleep inside schedule().
    > >
    > > Once schedule() re-enables IRQs, the task will be woken up with an
    > > IPI, and placed back on the runqueue.
    > >
    > > If we have such a wakeup pending, there is no need to search other
    > > CPUs for runnable tasks. Just skip (or bail out early from) newidle
    > > balancing, and run the just woken up task.
    > >
    > > For a memcache like workload test, this reduces total CPU use by
    > > about 2%, proportionally split between user and system time,
    > > and p99 and p95 application response time by 10% on average.
    > > The schedstats run_delay number shows a similar improvement.
    > >
    > > Signed-off-by: Rik van Riel <riel@surriel.com>
    >
    > Reviewed-by: Vincent Guittot <vincent.guittot@linaro.org>

    Thanks!

    \
     
     \ /
      Last update: 2021-05-04 11:22    [W:2.589 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site