lkml.org 
[lkml]   [2012]   [Feb]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [RFC PATCH 06/14] sched: aggregate total task_group load
    On Thu, Feb 16, 2012 at 8:41 PM, Nikunj A Dadhania
    <nikunj@linux.vnet.ibm.com> wrote:
    > On Wed, 01 Feb 2012 17:38:26 -0800, Paul Turner <pjt@google.com> wrote:
    >> +static inline void __update_cfs_rq_tg_load_contrib(struct cfs_rq *cfs_rq,
    >> +                                              int force_update)
    >> +{
    >> +     struct task_group *tg = cfs_rq->tg;
    >> +     s64 tg_contrib;
    >> +
    >> +     tg_contrib = cfs_rq->runnable_load_avg + cfs_rq->blocked_load_avg;
    >> +     tg_contrib -= cfs_rq->tg_load_contrib;
    >> +
    >> +     if (force_update || abs64(tg_contrib) > cfs_rq->tg_load_contrib / 8) {
    >>
    > Not obvious to me where this 8 is coming from?
    >

    It's arbitrary, it requires a change in load contrib by more than
    1/8th -- or 12.5% -- of the contrib we're advertising globally before
    we pay the cost of an update in the non-forced case.

    We used the same trick in the previous shares tracking code since we
    did not have a natural rate limit on the update rate. While this is
    not as much of an issue in the new code, it does not seem to be
    hurting the accuracy and squashing essentially spurious updates does
    not hurt.

    - Paul

    > Regards
    > Nikunj
    >
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-02-17 11:55    [W:0.034 / U:1.128 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site