Re: Experimental ARC implementation - Mailing list pgsql-hackers

From Zeugswetter Andreas SB SD
Subject Re: Experimental ARC implementation
Date
Msg-id 46C15C39FEB2C44BA555E356FBCD6FA496205C@m0114.s-mxs.net
Whole thread Raw
In response to Experimental ARC implementation  (Jan Wieck <JanWieck@Yahoo.com>)
Responses Re: Experimental ARC implementation  (Jan Wieck <JanWieck@Yahoo.com>)
List pgsql-hackers
> > Why not use the checkpointer itself inbetween checkpoints ?
> > use a min and a max dirty setting like Informix. Start writing
> > when more than max are dirty stop when at min. This avoids writing
> > single pages (which is slow, since it cannot be grouped together
> > by the OS).
>
> Current approach is similar ... if I strech the IO and syncing over the
> entire 150-300 second checkpoint interval, grouping in 50 pages then
> sync()+nap, the system purr's pretty nice and without any peaks.

But how do you handle a write IO bound system then ? My thought was to
let the checkpointer write dirty pages inbetween checkpoints with a min max,
but still try to do the checkpoint as fast as possible. I don't think
streching the checkpoint is good, since it needs to write hot pages, which the
inbetween IO should avoid doing. The checkpointer would have two tasks,
that it handles alternately, checkpoint or flush LRU from max to min.

Andreas


pgsql-hackers by date:

Previous
From: Markus Bertheau
Date:
Subject: Re: \xDD patch for 7.5devel
Next
From: Manfred Spraul
Date:
Subject: Re: Performance features the 4th