From: | Bruce Momjian <bruce(at)momjian(dot)us> |
---|---|
To: | Heikki Linnakangas <hlinnakangas(at)vmware(dot)com> |
Cc: | Reza Taheri <rtaheri(at)vmware(dot)com>, "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org> |
Subject: | Re: PGSQL, checkpoints, and file system syncs |
Date: | 2014-04-09 16:51:27 |
Message-ID: | 20140409165127.GD8686@momjian.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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(at)mr-paradox(dot)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(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ Everyone has their own god. +
From | Date | Subject | |
---|---|---|---|
Next Message | Claudio Freire | 2014-04-09 18:56:23 | Interesting case of index un-usage |
Previous Message | Bruce Momjian | 2014-04-09 16:42:23 | Re: PGSQL, checkpoints, and file system syncs |