From: Peter Zijlstra <peterz@infradead.org>
To: Yuyang Du <yuyang.du@intel.com>
Cc: mingo@redhat.com, linux-kernel@vger.kernel.org,
rafael.j.wysocki@intel.com, arjan.van.de.ven@intel.com,
len.brown@intel.com, alan.cox@intel.com, mark.gross@intel.com,
pjt@google.com, fengguang.wu@intel.com
Subject: Re: [PATCH 2/2] sched: Rewrite per entity runnable load average tracking
Date: Mon, 7 Jul 2014 12:07:45 +0200 [thread overview]
Message-ID: <20140707100745.GJ6758@twins.programming.kicks-ass.net> (raw)
In-Reply-To: <1404268256-3019-2-git-send-email-yuyang.du@intel.com>
[-- Attachment #1: Type: text/plain, Size: 1778 bytes --]
On Wed, Jul 02, 2014 at 10:30:56AM +0800, Yuyang Du wrote:
> The idea of per entity runnable load average (aggregated to cfs_rq and task_group load)
> was proposed by Paul Turner, and it is still followed by this rewrite. But this rewrite
> is made due to the following ends:
>
> (1). cfs_rq's load average (namely runnable_load_avg and blocked_load_avg) is updated
> incrementally by one entity at one time, which means the cfs_rq load average is only
> partially updated or asynchronous accross its entities (the entity in question is up
> to date and contributes to the cfs_rq, but all other entities are effectively lagging
> behind).
>
> (2). cfs_rq load average is different between top rq->cfs_rq and task_group's per CPU
> cfs_rqs in whether or not blocked_load_average contributes to the load.
>
> (3). How task_group's load is tracked is very confusing and complex.
>
> Therefore, this rewrite tackles these by:
>
> (1). Combine runnable and blocked load averages for cfs_rq. And track cfs_rq's load average
> as a whole (contributed by all runnabled and blocked entities on this cfs_rq).
>
> (2). Only track task load average. Do not track task_group's per CPU entity average, but
> track that entity's own cfs_rq's aggregated average.
>
> This rewrite resutls in significantly reduced codes and expected consistency and clarity.
> Also, if draw the lines of previous cfs_rq runnable_load_avg and blocked_load_avg and the
> new rewritten load_avg, then compare those lines, you can see the new load_avg is much
> more continuous (no abrupt jumping ups and downs) and decayed/updated more quickly and
> synchronously.
This patch is too big.. and I can't figure out wth you've done. The
Changelog also doesn't seem to help much.
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
next prev parent reply other threads:[~2014-07-07 10:07 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-02 2:30 [PATCH 1/2] sched: Remove update_rq_runnable_avg Yuyang Du
2014-07-02 2:30 ` [PATCH 2/2] sched: Rewrite per entity runnable load average tracking Yuyang Du
2014-07-07 10:07 ` Peter Zijlstra [this message]
2014-07-07 10:46 ` Peter Zijlstra
2014-07-07 20:03 ` Yuyang Du
2014-07-07 22:25 ` bsegall
2014-07-08 0:08 ` Yuyang Du
2014-07-08 17:04 ` bsegall
2014-07-09 1:07 ` Yuyang Du
2014-07-09 17:08 ` bsegall
2014-07-09 18:39 ` Yuyang Du
2014-07-09 18:45 ` Peter Zijlstra
2014-07-09 19:07 ` bsegall
2014-07-10 10:08 ` Peter Zijlstra
2014-07-10 17:01 ` bsegall
2014-07-10 19:53 ` Yuyang Du
2014-07-10 23:22 ` Yuyang Du
2014-07-11 8:47 ` Peter Zijlstra
2014-07-11 0:52 ` Yuyang Du
2014-07-11 2:01 ` Yuyang Du
2014-07-09 23:30 ` Yuyang Du
2014-07-10 17:06 ` bsegall
2014-07-10 20:08 ` Yuyang Du
2014-07-08 12:50 ` Peter Zijlstra
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=20140707100745.GJ6758@twins.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=alan.cox@intel.com \
--cc=arjan.van.de.ven@intel.com \
--cc=fengguang.wu@intel.com \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.gross@intel.com \
--cc=mingo@redhat.com \
--cc=pjt@google.com \
--cc=rafael.j.wysocki@intel.com \
--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.