On Saturday 10 March 2001 08:41, Tom Lane wrote:
> More numbers, these from a Powerbook G3 laptop running Linux 2.2:
Eeegghhh. Sorry... But where did you get O_DSYNC on Linux?????
Maybe here?
bits/fcntl.h: # define O_DSYNC O_SYNC
There is no any O_DSYNC in the kernel... Even in the latest 2.4.x.
> [tgl@g3 tmp]$ uname -a
> Linux g3 2.2.18-4hpmac #1 Thu Dec 21 15:16:15 MST 2000 ppc unknown
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_DSYNC -DBLOCKS=1 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m32.418s
> user 0m0.020s
> sys 0m14.020s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_DSYNC -DBLOCKS=4 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m10.894s
> user 0m0.000s
> sys 0m4.030s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_DSYNC -DBLOCKS=8 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m7.211s
> user 0m0.000s
> sys 0m2.200s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_DSYNC -DBLOCKS=32 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m4.441s
> user 0m0.020s
> sys 0m0.870s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_DSYNC -DBLOCKS=64 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m4.488s
> user 0m0.000s
> sys 0m0.640s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_ODSYNC -DBLOCKS=1 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m3.725s
> user 0m0.000s
> sys 0m0.310s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_ODSYNC -DBLOCKS=4 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m3.785s
> user 0m0.000s
> sys 0m0.290s
>
> [tgl@g3 tmp]$ gcc -Wall -O -DINIT_WRITE -DUSE_ODSYNC -DBLOCKS=64 tfsync.c
> [tgl@g3 tmp]$ time ./a.out
>
> real 0m3.753s
> user 0m0.010s
> sys 0m0.300s
>
>
> Starting to look like we should just use ODSYNC where available, and
> forget about dumping more per write ...
>
> regards, tom lane
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
--
Sincerely Yours,
Denis Perchine
----------------------------------
E-Mail: dyp@perchine.com
HomePage: http://www.perchine.com/dyp/
FidoNet: 2:5000/120.5
----------------------------------