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

Mike Galbraith
2012-09-25T03:44:03Z

On Mon, 2012-09-24 at 20:32 -0700, Linus Torvalds wrote:
> On Mon, Sep 24, 2012 at 8:20 PM, Mike Galbraith <efault@gmx.de> wrote:
> >
> > Yes. Cross wiring traverse _start_ points should eliminate (well, damp)
> > bounce as well without killing the 1:N latency/preempt benefits of large
> > L3 packages.
>
> Yes, a "test buddy first, then check the other cores in the package"
> hybrid approach might be reasonable.
>
> Of course, that's effectively what the whole "prev_cpu" thing is kind
> of supposed to also do, isn't it? Because it's even lovelier if you
> can avoid bouncing around by trying to hit a previous CPU that might
> just have some of the old data in the caches still.

prev_cpu can be anywhere, so buddies sometimes need help getting back
together when they've been disrupted, but yeah, in the general case it's
local, so you want prev_cpu if it can be had.

-Mike