On Wed, Aug 7, 2013 at 07:04:43PM +0100, Thom Brown wrote:
> On 7 August 2013 18:49, Jon Nelson <jnelson+pgsql@jamponi.net> wrote:
> > On Wed, Aug 7, 2013 at 12:42 PM, Thom Brown <thom@linux.com> wrote:
> >> for i in 1 2 5 10 100; do ./test_fallocate foo $i 1; done
> >> method: classic. 1 open/close iterations, 1 rewrite in 0.6380s
> >> method: posix_fallocate. 1 open/close iterations, 1 rewrite in 0.3204s
> >> method: glibc emulation. 1 open/close iterations, 1 rewrite in 0.6274s
> >> method: classic. 2 open/close iterations, 1 rewrite in 1.2908s
> >> method: posix_fallocate. 2 open/close iterations, 1 rewrite in 0.6596s
> >> method: glibc emulation. 2 open/close iterations, 1 rewrite in 1.2666s
> >> method: classic. 5 open/close iterations, 1 rewrite in 3.1419s
> >> method: posix_fallocate. 5 open/close iterations, 1 rewrite in 1.5930s
> >> method: glibc emulation. 5 open/close iterations, 1 rewrite in 3.1516s
> >> method: classic. 10 open/close iterations, 1 rewrite in 6.2912s
> >> method: posix_fallocate. 10 open/close iterations, 1 rewrite in 3.2626s
> >> method: glibc emulation. 10 open/close iterations, 1 rewrite in 6.3667s
> >> method: classic. 100 open/close iterations, 1 rewrite in 67.4174s
> >> method: posix_fallocate. 100 open/close iterations, 1 rewrite in 37.8788s
> >> method: glibc emulation. 100 open/close iterations, 1 rewrite in 55.0714s
> >
> > OK. That's interesting, and a good data point.
> >
> > One thing you could try manually disabling the use of posix_fallocate in 269e78.
> > After running ./configure --stuff-here
> > edit src/include/pg_config.h and comment out the following line (on or
> > around line 374)
> > #define HAVE_POSIX_FALLOCATE 1
> >
> > *then* build postgresql and see if the performance hit is still there.
>
> Okay, done that. The TPS increases again:
>
> 2308.807568 / 2554.264572 / 2563.190204
>
> And I did run ./configure... before removing the line, and built it
> after the change.
Where are we on this issue?
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://enterprisedb.com
+ It's impossible for everything to be true. +