public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: Mike Galbraith <efault@gmx.de>
Cc: 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>,
	Ingo Molnar <mingo@kernel.org>
Subject: Re: 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets - bisected
Date: Sat, 15 Sep 2012 09:16:59 -0700	[thread overview]
Message-ID: <m24nmzz2f8.fsf@firstfloor.org> (raw)
In-Reply-To: <1347680006.4340.142.camel@marge.simpson.net> (Mike Galbraith's message of "Sat, 15 Sep 2012 05:33:26 +0200")

Mike Galbraith <efault@gmx.de> writes:
>
> The only reason I can think of why pgbench might suffer is postgres's
> userspace spinlocks.  If you always look for an idle core, you improve
> the odds that the wakeup won't preempt a lock holder, sending others
> into a long spin.

User space spinlocks like this unfortunately have a tendency to break
with all kinds of scheduler changes. We've seen this frequently too
with other users. The best bet currently is to use the real time
scheduler, but with various tweaks to get its overhead down.

Ultimatively the problem is that user space spinlocks with CPU
oversubcription is a very unstable setup and small changes can
easily disturb it.

Just using futex is unfortunately not the answer either.

-Andi

-- 
ak@linux.intel.com -- Speaking for myself only

  reply	other threads:[~2012-09-15 16:17 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 [this message]
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
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=m24nmzz2f8.fsf@firstfloor.org \
    --to=andi@firstfloor.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.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=mingo@kernel.org \
    --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