• Peter Zijlstra's avatar
    sched/fair: Add cfs_rq::avg_vruntime · af4cf404
    Peter Zijlstra authored
    In order to move to an eligibility based scheduling policy, we need
    to have a better approximation of the ideal scheduler.
    
    Specifically, for a virtual time weighted fair queueing based
    scheduler the ideal scheduler will be the weighted average of the
    individual virtual runtimes (math in the comment).
    
    As such, compute the weighted average to approximate the ideal
    scheduler -- note that the approximation is in the individual task
    behaviour, which isn't strictly conformant.
    
    Specifically consider adding a task with a vruntime left of center, in
    this case the average will move backwards in time -- something the
    ideal scheduler would of course never do.
    Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    Link: https://lore.kernel.org/r/20230531124603.654144274@infradead.org
    af4cf404
sched.h 90.4 KB