
> > > Of course we would need to buffer >= 1 xlog page before write (or commit)
> > > to gain the full advantage.
> > 
> > > prewrite 0 + write and fsync:		60.4 sec
> > > sparse file + write with O_SYNC:		37.5 sec
> > > no prewrite + write with O_SYNC:		36.8 sec
> > > prewrite 0 + write with O_SYNC:		24.0 sec

> > The reason I'm inclined to question this is that what we want is not an
> > fsync per write but an fsync per transaction, and we can't easily buffer
> > all of a transaction's XLOG writes...
> 
> Yes, that is something to consider, but it would probably be sufficient to buffer 
> 1-3 optimal IO blocks (32-256k here).
> I assumed that with a few busy clients the fsyncs would come close to 
> one xlog page, but that is probably too few. 

I get best performance with eighter:
prewrite + 16k write with O_SYNC:		15.5 sec
prewrite + 32k write with O_SYNC:		11.5 sec
no prewite + 256k write with O_SYNC:		 5.4 sec

But this 256k per tx would probably be very unrealistic, thus
best overall performance would probably be achieved with
a 32k (or tuneable) xlog buffer O_SYNC and prewrite. 

Maybe a good thing for 7.1.1 :-) 

Andreas

Fri, 9 Mar 2001 19:44:49 +0100 
Zeugswetter Andreas SB  <ZeugswetterA@wien.spardat.at>
AW: AW: AW: WAL does not recover gracefully from out-of -dis k-sp ace 