Re: Is the fsync() fake on FreeBSD6.1?
Bruce Evans wrote:
[color=blue][color=green]
>> But I see strange results with iostat. It shows 16KB transactions,
>> ~2900 tps and 46 MB/s. On the other hand, the program runs for ~36
>> seconds, which gives ~1390 tps (this is a single desktop drive). Since
>> 36 seconds of 46MB/s would result in a file 1.6 GB in size, while it's
>> clearly 50000*512=25MB, iostat is lying.[/color]
>
> This is because you fsync() every 512 bytes. The file system then writes
> a 16K inode block and a 16K data block, giving 64 times as much i/o as
> necessary.[/color]
Ok, so you're saying that it actually does 46MB/s, rewriting 16K FS
blocks over and over?
In that case, wouldn't all writes to the FS, especially with
soft-updates be minimally 16K+16K? It doesn't look like it when I
monitor a live server - there are 8KB and 4KB writes... maybe UFS
fragments complicate the (ac)counting.
_______________________________________________
[email]freebsd-fs@freebsd.org[/email] mailing list
[url]http://lists.freebsd.org/mailman/listinfo/freebsd-fs[/url]
To unsubscribe, send any mail to "freebsd-fs-unsubscribe@freebsd.org"