Re: Misaligned BufferDescriptors causing major performance problems on AMD

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Greg Stark <stark(at)mit(dot)edu>, Peter Geoghegan <pg(at)heroku(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Misaligned BufferDescriptors causing major performance problems on AMD
Date: 2014-12-28 01:05:42
Message-ID: CA+TgmoYVhKADu0_3euvFgn+F0BwGkogvOU7betFAYYDcBFkptw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Dec 24, 2014 at 11:20 AM, Andres Freund <andres(at)2ndquadrant(dot)com> wrote:
> I just verified that I can still reproduce the problem:
>
> # aligned case (max_connections=401)
> afreund(at)axle:~$ pgbench -P 1 -h /tmp/ -p5440 postgres -n -M prepared -c 96 -j 96 -T 100 -S
> progress: 1.0 s, 405170.2 tps, lat 0.195 ms stddev 0.928
> progress: 2.0 s, 467011.1 tps, lat 0.204 ms stddev 0.140
> progress: 3.0 s, 462832.1 tps, lat 0.205 ms stddev 0.154
> progress: 4.0 s, 471035.5 tps, lat 0.202 ms stddev 0.154
> progress: 5.0 s, 500329.0 tps, lat 0.190 ms stddev 0.132
>
> BufferDescriptors is at 0x7f63610a6960 (which is 32byte aligned)
>
> # unaligned case (max_connections=400)
> afreund(at)axle:~$ pgbench -P 1 -h /tmp/ -p5440 postgres -n -M prepared -c 96 -j 96 -T 100 -S
> progress: 1.0 s, 202271.1 tps, lat 0.448 ms stddev 1.232
> progress: 2.0 s, 223823.4 tps, lat 0.427 ms stddev 3.007
> progress: 3.0 s, 227584.5 tps, lat 0.414 ms stddev 4.760
> progress: 4.0 s, 221095.6 tps, lat 0.410 ms stddev 4.390
> progress: 5.0 s, 217430.6 tps, lat 0.454 ms stddev 7.913
> progress: 6.0 s, 210275.9 tps, lat 0.411 ms stddev 0.606
> BufferDescriptors is at 0x7f1718aeb980 (which is 64byte aligned)

So, should we increase ALIGNOF_BUFFER from 32 to 64? Seems like
that's what these results are telling us.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2014-12-28 01:08:44 Re: Better way of dealing with pgstat wait timeout during buildfarm runs?
Previous Message Robert Haas 2014-12-28 01:02:52 Re: pg_basebackup fails with long tablespace paths