All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dietmar Eggemann <dietmar.eggemann@arm.com>
To: Vincent Guittot <vincent.guittot@linaro.org>
Cc: Peter Zijlstra <peterz@infradead.org>,
	Ingo Molnar <mingo@kernel.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	Wanpeng Li <kernellwp@gmail.com>, Yuyang Du <yuyang.du@intel.com>,
	Morten Rasmussen <Morten.Rasmussen@arm.com>,
	Linaro Kernel Mailman List <linaro-kernel@lists.linaro.org>,
	Paul Turner <pjt@google.com>,
	Benjamin Segall <bsegall@google.com>
Subject: Re: [PATCH 5/7 v4] sched: propagate asynchrous detach
Date: Wed, 12 Oct 2016 17:18:29 +0100	[thread overview]
Message-ID: <6423eabd-cd68-e613-de3e-cd370e8a5f68@arm.com> (raw)
In-Reply-To: <CAKfTPtC0HoYfzHiokXz+o_0Fa4Z3FzSLZCQO=_RoFvEQFEfiVw@mail.gmail.com>

On 12/10/16 16:45, Vincent Guittot wrote:
> On 12 October 2016 at 17:03, Dietmar Eggemann <dietmar.eggemann@arm.com> wrote:
>> On 26/09/16 13:19, Vincent Guittot wrote:

[...]

>>> @@ -6607,6 +6609,10 @@ static void update_blocked_averages(int cpu)
>>>
>>>               if (update_cfs_rq_load_avg(cfs_rq_clock_task(cfs_rq), cfs_rq, true))
>>>                       update_tg_load_avg(cfs_rq, 0);
>>> +
>>> +             /* Propagate pending load changes to the parent */
>>> +             if (cfs_rq->tg->se[cpu])
>>> +                     update_load_avg(cfs_rq->tg->se[cpu], 0);
>>
>> In my test (1 task (run/period: 8ms/16ms) in tg_root->tg_x->tg_y->*tg_z*
>> and oscillating between cpu1 and cpu2) the cfs_rq related signals are
>> nicely going down to 0 after the task has left the cpu but it doesn't
>> seem to be the case for the corresponding se (cfs_rq->tg->se[cpu])?
> 
> strange because such use case is part of the functional tests that I
> run and it was working fine according to last test that I did
> 
>>
>> It should actually work correctly because of the
>> update_tg_cfs_util/load() calls in update_load_avg(cfs_rq->tg->se[cpu],
>> 0)->propagate_entity_load_avg()
> 
> Furthermore, the update of the parent cfs_rq tg_x->cfs_rq[cpu] uses
> the delta between previous and new value for the child tg_y->se[cpu].
> So it means that if tg_x->cfs_rq[cpu]->avg.load_avg goes down to 0,
> tg_y->se[cpu]->avg.load_avg has at least changed and most probably
> goes down to 0 too

Makes sense.

> 
> Can't it be a misplaced trace point ?

Yes, you're right, it was a missing tracepoint. I only had se and cfs_rq
pelt tracepoints in __update_load_avg() and
attach/detach_entity_load_avg(). I've added them as well to
propagate_entity_load_avg() after the update_tg_cfs_load() call and now
it makes sense. Thanks!

[...]

  reply	other threads:[~2016-10-12 16:26 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-26 12:19 [PATCH 0/7 v4] sched: reflect sched_entity move into task_group's load Vincent Guittot
2016-09-26 12:19 ` [PATCH 1/7 v4] sched: factorize attach entity Vincent Guittot
2016-10-05  9:38   ` Dietmar Eggemann
2016-10-06 23:11     ` Vincent Guittot
2016-10-12 10:59       ` Vincent Guittot
2016-10-12 11:12         ` Dietmar Eggemann
2016-09-26 12:19 ` [PATCH 2/7 v4] sched: fix hierarchical order in rq->leaf_cfs_rq_list Vincent Guittot
2016-09-26 12:19 ` [PATCH 3/7 v4] sched: factorize PELT update Vincent Guittot
2016-09-26 12:19 ` [PATCH 4/7 v4] sched: propagate load during synchronous attach/detach Vincent Guittot
2016-09-26 12:19 ` [PATCH 5/7 v4] sched: propagate asynchrous detach Vincent Guittot
2016-10-12 15:03   ` Dietmar Eggemann
2016-10-12 15:45     ` Vincent Guittot
2016-10-12 16:18       ` Dietmar Eggemann [this message]
2016-09-26 12:19 ` [PATCH 6/7 v4] sched: fix task group initialization Vincent Guittot
2016-09-26 12:19 ` [PATCH 7/7 v4] sched: fix wrong utilization accounting when switching to fair class Vincent Guittot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6423eabd-cd68-e613-de3e-cd370e8a5f68@arm.com \
    --to=dietmar.eggemann@arm.com \
    --cc=Morten.Rasmussen@arm.com \
    --cc=bsegall@google.com \
    --cc=kernellwp@gmail.com \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=pjt@google.com \
    --cc=vincent.guittot@linaro.org \
    --cc=yuyang.du@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.