Re: PGSQL, checkpoints, and file system syncs - Mailing list pgsql-performance

From Bruce Momjian
Subject Re: PGSQL, checkpoints, and file system syncs
Date
Msg-id 20140409165127.GD8686@momjian.us
Whole thread Raw
In response to Re: PGSQL, checkpoints, and file system syncs  (Heikki Linnakangas <hlinnakangas@vmware.com>)
List pgsql-performance
On Thu, Apr 3, 2014 at 09:01:08PM +0300, Heikki Linnakangas wrote:
> >Is there something I can set in the PGSQL parameters or in the file
> >system parameters to force a steady flow of writes to disk rather
> >than waiting for a sync system call? Mounting with "commit=1" did not
> >make a difference.
>
> Try setting the vm.dirty_bytes sysctl. Something like 256MB might be a
> good starting point.
>
> This comes up fairly often, see e.g.:
> http://www.postgresql.org/message-id/flat/27C32FD4-0142-44FE-8488-9F36
> 6DC75966@mr-paradox.net

Uh, should he set vm.dirty_bytes or vm.dirty_background_bytes?  It is my
understanding that vm.dirty_background_bytes starts the I/O while still
accepting writes, while vm.dirty_bytes stops accepting writes during the
I/O, which isn't optimal.  See:

    https://www.kernel.org/doc/Documentation/sysctl/vm.txt

    dirty_bytes

    Contains the amount of dirty memory at which a process generating disk
    writes will itself start writeback.

    dirty_background_bytes

    Contains the amount of dirty memory at which the background kernel
    flusher threads will start writeback.

I think we want the flusher to be active, not necessarly the writing
process.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + Everyone has their own god. +


pgsql-performance by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: PGSQL, checkpoints, and file system syncs
Next
From: Claudio Freire
Date:
Subject: Interesting case of index un-usage