From: Ingo Molnar <mingo@kernel.org>
To: Mike Galbraith <efault@gmx.de>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>,
Andi Kleen <andi@firstfloor.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Borislav Petkov <bp@alien8.de>,
Nikolay Ulyanitsky <lystor@gmail.com>,
linux-kernel@vger.kernel.org,
Andreas Herrmann <andreas.herrmann3@amd.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Andrew Morton <akpm@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>
Subject: Re: 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets - bisected
Date: Wed, 19 Sep 2012 16:54:54 +0200 [thread overview]
Message-ID: <20120919145454.GA18327@gmail.com> (raw)
In-Reply-To: <1348058119.4457.129.camel@marge.simpson.net>
* Mike Galbraith <efault@gmx.de> wrote:
> On Sun, 2012-09-16 at 06:35 +0200, Mike Galbraith wrote:
>
> > Oh, while I'm thinking about it, there's another scenario
> > that could cause the select_idle_sibling() change to affect
> > pgbench on largeish packages, but it boils down to
> > preemption odds as well. IIRC pgbench _was_ at least 1:N,
> > ie one process driving the whole load. Waker of many
> > (singularly bad idea as a way to generate load) being
> > preempted by it's wakees stalls the whole load, so expensive
> > spreading of wakees to the four winds ala WAKE_BALANCE
> > becomes attractive, that pain being markedly less intense
> > than having multiple cores go idle while creator or work
> > waits for one.
>
> Enabling SMT on little E5620 box says that's the deal.
> pgbench as run is 1:N, and all you have to do is disable
> select_idle_sibling() entirely to see that for _this_ (~odd)
> load, max spread and lower wakeup latency for the mother of
> all work itself is a good thing.
>
> pgbench -i pgbench && pgbench -c $N -T 10 pgbench
>
> N= 1 2 4 8 16 32 64
> 1336 2482 3752 3485 3327 2928 2290 virgin 3.6.0-rc6
> 1408 2457 3363 3070 2938 2368 1757 +revert reverted
> 1310 2492 2487 2729 2186 975 874 +revert + select_idle_sibling() disabled
> 1407 2505 3422 3137 3093 2828 2250 +revert + schedctl -B /etc/init.d/postgresql restart
> 1321 2403 2515 2759 2420 2301 1894 +revert + schedctl -B /etc/init.d/postgresql restart + select_idle_sibling() disabled
>
> Hohum, damned if ya do, damned if ya don't. Damn.
As a test, could you mark that 'big PostgreSQL central work
queue process' with some high priority (renice -20?), to make
sure it's never preempted by wakees? Does that recover
performance as well?
Thanks,
Ingo
next prev parent reply other threads:[~2012-09-19 14:55 UTC|newest]
Thread overview: 115+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-14 7:47 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets Nikolay Ulyanitsky
2012-09-14 18:40 ` Borislav Petkov
2012-09-14 18:51 ` Borislav Petkov
2012-09-14 21:27 ` 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets - bisected Borislav Petkov
2012-09-14 21:40 ` Peter Zijlstra
2012-09-14 21:44 ` Linus Torvalds
2012-09-14 21:56 ` Peter Zijlstra
2012-09-14 21:59 ` Peter Zijlstra
2012-09-15 3:57 ` Mike Galbraith
2012-09-14 22:01 ` Linus Torvalds
2012-09-14 22:10 ` Peter Zijlstra
2012-09-14 22:20 ` Linus Torvalds
2012-09-14 22:14 ` Borislav Petkov
2012-09-14 21:45 ` Borislav Petkov
2012-09-14 21:42 ` Linus Torvalds
2012-09-15 3:33 ` Mike Galbraith
2012-09-15 16:16 ` Andi Kleen
2012-09-15 16:36 ` Mike Galbraith
2012-09-15 17:08 ` richard -rw- weinberger
2012-09-16 4:48 ` Mike Galbraith
2012-09-15 21:32 ` Alan Cox
2012-09-16 4:35 ` Mike Galbraith
2012-09-16 19:57 ` Linus Torvalds
2012-09-17 8:08 ` Mike Galbraith
2012-09-17 10:07 ` Ingo Molnar
2012-09-17 10:47 ` Mike Galbraith
2012-09-17 14:39 ` Andi Kleen
2012-09-19 12:35 ` Mike Galbraith
2012-09-19 14:54 ` Ingo Molnar [this message]
2012-09-19 15:23 ` Mike Galbraith
2012-09-24 15:00 ` Mel Gorman
2012-09-24 15:23 ` Nikolay Ulyanitsky
2012-09-24 15:53 ` Borislav Petkov
2012-09-24 15:30 ` Peter Zijlstra
2012-09-24 15:51 ` Mike Galbraith
2012-09-24 15:52 ` Linus Torvalds
2012-09-24 16:07 ` Peter Zijlstra
2012-09-24 16:33 ` Linus Torvalds
2012-09-24 16:54 ` Peter Zijlstra
2012-09-25 12:10 ` Hillf Danton
2012-09-24 16:12 ` Peter Zijlstra
2012-09-24 16:30 ` Linus Torvalds
2012-09-24 16:52 ` Borislav Petkov
2012-09-24 16:54 ` Peter Zijlstra
2012-09-24 17:44 ` Peter Zijlstra
2012-09-25 13:23 ` Mel Gorman
2012-09-25 14:36 ` Peter Zijlstra
2012-09-24 18:26 ` Mike Galbraith
2012-09-24 19:12 ` Linus Torvalds
2012-09-24 19:20 ` Borislav Petkov
2012-09-25 1:57 ` Mike Galbraith
2012-09-25 2:11 ` Linus Torvalds
2012-09-25 2:49 ` Mike Galbraith
2012-09-25 3:10 ` Linus Torvalds
2012-09-25 3:20 ` Mike Galbraith
2012-09-25 3:32 ` Linus Torvalds
2012-09-25 3:43 ` Mike Galbraith
2012-09-25 11:58 ` Peter Zijlstra
2012-09-25 13:17 ` Borislav Petkov
2012-09-25 17:00 ` Borislav Petkov
2012-09-25 17:21 ` Linus Torvalds
2012-09-25 18:42 ` Borislav Petkov
2012-09-25 19:08 ` Linus Torvalds
2012-09-26 2:23 ` Mike Galbraith
2012-09-26 17:17 ` Borislav Petkov
2012-09-26 2:00 ` Mike Galbraith
2012-09-26 2:22 ` Linus Torvalds
2012-09-26 2:42 ` Mike Galbraith
2012-09-26 17:15 ` Borislav Petkov
2012-09-26 16:32 ` Borislav Petkov
2012-09-26 18:19 ` Linus Torvalds
2012-09-26 21:37 ` Borislav Petkov
2012-09-27 5:09 ` Mike Galbraith
2012-09-27 5:18 ` Borislav Petkov
2012-09-27 5:44 ` Mike Galbraith
2012-09-27 5:47 ` Ingo Molnar
2012-09-27 5:59 ` Ingo Molnar
2012-09-27 6:34 ` Mike Galbraith
2012-09-27 6:41 ` Ingo Molnar
2012-09-27 6:54 ` Mike Galbraith
2012-09-27 7:10 ` Ingo Molnar
2012-09-27 16:25 ` Borislav Petkov
2012-09-27 17:44 ` Linus Torvalds
2012-09-27 18:05 ` Borislav Petkov
2012-09-27 18:19 ` Linus Torvalds
2012-09-27 18:29 ` Peter Zijlstra
2012-09-27 19:24 ` Borislav Petkov
2012-09-28 3:50 ` Mike Galbraith
2012-09-28 12:30 ` Borislav Petkov
2012-09-27 19:40 ` Linus Torvalds
2012-09-28 4:13 ` Mike Galbraith
2012-09-28 8:37 ` Peter Zijlstra
2012-09-27 7:17 ` david
2012-09-27 7:55 ` Mike Galbraith
2012-09-27 10:20 ` Borislav Petkov
2012-09-27 13:38 ` Mike Galbraith
2012-09-27 16:55 ` david
2012-09-27 4:32 ` Mike Galbraith
2012-09-27 8:21 ` Peter Zijlstra
2012-09-27 16:48 ` david
2012-09-27 17:38 ` Peter Zijlstra
2012-09-27 17:45 ` david
2012-09-27 18:09 ` Peter Zijlstra
2012-09-27 18:15 ` Linus Torvalds
2012-09-27 18:24 ` Borislav Petkov
2012-09-25 1:39 ` Mike Galbraith
2012-09-25 21:11 ` Suresh Siddha
2012-09-25 4:16 ` Mike Galbraith
2012-09-15 4:11 ` Mike Galbraith
[not found] ` <CA+55aFz1A7HbMYS9o-GTS5Zm=Xx8MUD7cR05GMVo--2E34jcgQ@mail.gmail.com>
2012-09-15 4:42 ` Mike Galbraith
2012-09-15 10:44 ` Borislav Petkov
2012-09-15 14:47 ` Mike Galbraith
2012-09-15 15:18 ` Borislav Petkov
2012-09-15 16:13 ` Mike Galbraith
2012-09-15 19:44 ` Borislav Petkov
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=20120919145454.GA18327@gmail.com \
--to=mingo@kernel.org \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=andi@firstfloor.org \
--cc=andreas.herrmann3@amd.com \
--cc=bp@alien8.de \
--cc=efault@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=lystor@gmail.com \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/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