Re: 20% performance drop on PostgreSQL 9.2 from kernel 3.5.3 to 3.6-rc5 on AMD chipsets - bisected

Mel Gorman
2012-09-24T15:00:55Z

On Fri, Sep 14, 2012 at 02:42:44PM -0700, Linus Torvalds wrote:
> On Fri, Sep 14, 2012 at 2:27 PM, Borislav Petkov <bp@alien8.de> wrote:
> >
> > as Nikolay says below, we have a regression in 3.6 with pgbench's
> > benchmark in postgresql.
> >
> > I was able to reproduce it on another box here and did a bisection run.
> > It pointed to the commit below.
>
> Ok. I guess we should just revert it. However, before we do that,
> maybe Mike can make it just use the exact old semantics of
> select_idle_sibling() in the update_top_cache_domain() logic.
>

The patch that you being reverted was meant to fix problems with
commit 4dcfe102 (sched: Avoid SMT siblings in select_idle_sibling() if
possible). That patch made select_idle_sibling() quite fat and I know it
is responsible for a 2% regression in a kernel compile benchmark between
kernel 3.1 and 3.2 on an old AMD Phenom II X4 940. Reverting Mike's patch
might fix this Postgres regression but it reintroduces the overhead caused
by commit 4dcfe102 for other cases. I do not have a suggestion on how to
make this better, I'm just pointing out that the revert has some downsides.

--
Mel Gorman
SUSE Labs