From: Peter Zijlstra <peterz@infradead.org>
To: Christian Borntraeger <borntraeger@de.ibm.com>
Cc: Yuyang Du <yuyang.du@intel.com>, Ingo Molnar <mingo@kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
vincent.guittot@linaro.org, Morten.Rasmussen@arm.com,
dietmar.eggemann@arm.com, pjt@google.com, bsegall@google.com
Subject: Re: group scheduler regression since 4.3 (bisect 9d89c257d sched/fair: Rewrite runnable load and utilization average tracking)
Date: Mon, 26 Sep 2016 12:56:21 +0200 [thread overview]
Message-ID: <20160926105621.GZ5016@twins.programming.kicks-ass.net> (raw)
In-Reply-To: <45222b6f-4849-f1f4-fdf5-2a26ac9a3ed4@de.ibm.com>
On Mon, Sep 26, 2016 at 12:42:22PM +0200, Christian Borntraeger wrote:
> Folks,
>
> I have seen big scalability degredations sind 4.3 (bisected 9d89c257d
> sched/fair: Rewrite runnable load and utilization average tracking)
> This has not been fixed by subsequent patches,e.g. the ones that try to
> fix this for interactive workload.
>
> The problem is only visible for sleep/wakeup heavy workload which must
> be part of the scheduler group (e.g. a sysbench OLTP inside a KVM guest
> as libvirt will put KVM guests into cgroup instances).
>
> For example a simple sysbench oltp with mysql inside a KVM guests with
> 16 CPUs backed by 8 host cpus (16 host threads) scales less (scale up
> inside a guest, having multiple instances). This is the numbers of
> events per second.
> Unmounting /sys/fs/cgroup/cpu,cpuacct (thus forcing libvirt to not
> use group scheduling for KVM guests) makes the behaviour much better:
>
>
> instances group nogroup
> 1 3406 3002
> 2 5078 4940
> 3 6017 6760
> 4 6471 8216 (+27%)
> 5 6716 9196
> 6 6976 9783
> 7 7127 10170
> 8 7399 10385 (+40%)
>
> before 9d89c257d ("sched/fair: Rewrite runnable load and utilization
> average tracking") there was basically no difference between group
> or non-group scheduling. These numbers are with 4.7, older kernels after
> 9d89c257d show a similar difference.
>
> The bad thing is that there is a lot of idle cpu power in the host
> when this happens so the scheduler seems to not realize that this
> workload could use more cpus in the host.
>
> I tried some experiments , but I have not found a hack that "fixes" the
> degredation, which would give me an indication which part of the code
> is broken. So are there any ideas? Is the estimated group load
> calculation just not fast enough for sleep/wakeup workload?
One of the differences in the old and new thing is being addressed by
these patches:
https://lkml.kernel.org/r/1473666472-13749-1-git-send-email-vincent.guittot@linaro.org
Could you see if those patches make a difference? If not, we'll have to
go poke elsewhere ofcourse ;-)
next prev parent reply other threads:[~2016-09-26 10:56 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-26 10:42 group scheduler regression since 4.3 (bisect 9d89c257d sched/fair: Rewrite runnable load and utilization average tracking) Christian Borntraeger
2016-09-26 10:56 ` Peter Zijlstra [this message]
2016-09-26 11:42 ` Christian Borntraeger
2016-09-26 11:53 ` Peter Zijlstra
2016-09-26 12:01 ` Christian Borntraeger
2016-09-26 12:10 ` Peter Zijlstra
2016-09-26 12:49 ` Christian Borntraeger
2016-09-26 14:12 ` Christian Borntraeger
2016-09-26 12:25 ` 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=20160926105621.GZ5016@twins.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=Morten.Rasmussen@arm.com \
--cc=borntraeger@de.ibm.com \
--cc=bsegall@google.com \
--cc=dietmar.eggemann@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox