Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1292019

Re: PELT initial task load and wake_up_new_task()

From Yuyang Du <yuyang.du@intel.com>
Newsgroups linux.kernel
Subject Re: PELT initial task load and wake_up_new_task()
Date 2015-12-15 11:20 +0100
Message-ID <qFUS6-2H9-7@gated-at.bofh.it> (permalink)
References <qEHNg-4i9-3@gated-at.bofh.it> <qFrwJ-8s1-1@gated-at.bofh.it> <qFLYu-59T-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Mon, Dec 14, 2015 at 04:41:14PM -0800, Steve Muckle wrote:
> Hi Yuyang,
> 
> On 12/13/2015 11:13 AM, Yuyang Du wrote:
> > Hi Steve,
> > 
> > On Fri, Dec 11, 2015 at 06:01:45PM -0800, Steve Muckle wrote:
> >> In init_entity_runnable_average() the last_update_time is initialized to
> >> zero. The task is given max load and utilization as a pessimistic
> >> initial estimate.
> >>
> >> But if in wake_up_new_task() the task is placed on a CPU other than
> >> where it was created, __update_load_avg() will be called via
> >> set_task_cpu() -> migrate_task_rq_fair() -> remove_entity_load_avg().
> >>
> >> Since last_update_time is zero the delta will be huge and the task's
> >> load will be entirely decayed away before it is enqueued at the
> >> destination CPU.
> >  
> > Since the new task's last_update_time is equal to 0, it will not be decayed.
> 
> Can you point me to the code for that logic? I don't see anything that
> prevents the decay when a newly woken task is placed on a different CPU
> via the call chain I mentioned above. My testing also shows the load
> being decayed to zero.
> 
You may search the last_update_time, and see it would be treated differently
if it is 0. Hope this may be helpful.
--
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/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

PELT initial task load and wake_up_new_task() Steve Muckle <steve.muckle@linaro.org> - 2015-12-12 03:10 +0100
  Re: PELT initial task load and wake_up_new_task() Yuyang Du <yuyang.du@intel.com> - 2015-12-14 04:00 +0100
    Re: PELT initial task load and wake_up_new_task() Steve Muckle <steve.muckle@linaro.org> - 2015-12-15 01:50 +0100
      Re: PELT initial task load and wake_up_new_task() Yuyang Du <yuyang.du@intel.com> - 2015-12-15 11:20 +0100
        Re: PELT initial task load and wake_up_new_task() Steve Muckle <steve.muckle@linaro.org> - 2015-12-15 19:50 +0100
          Re: PELT initial task load and wake_up_new_task() Yuyang Du <yuyang.du@intel.com> - 2015-12-16 08:50 +0100
            Re: [PATCH] sched: Fix new task's load avg removed from source CPU in kbuild test robot <lkp@intel.com> - 2015-12-16 09:00 +0100
            Re: PELT initial task load and wake_up_new_task() Steve Muckle <steve.muckle@linaro.org> - 2015-12-17 04:00 +0100
              Re: PELT initial task load and wake_up_new_task() Yuyang Du <yuyang.du@intel.com> - 2015-12-17 08:30 +0100
                Re: PELT initial task load and wake_up_new_task() Peter Zijlstra <peterz@infradead.org> - 2015-12-17 10:50 +0100
                Re: PELT initial task load and wake_up_new_task() Yuyang Du <yuyang.du@intel.com> - 2015-12-17 11:10 +0100

csiph-web