Jan Hlavat� <[EMAIL PROTECTED]> wrote on 09/15/2004 12:35:40 PM:
> Most probably because the implementation does not what it is supposed to
do,
> and does ordinary "rw" mode instead.
I don't think so. I added a couple of tests to the original code. #16 is
the same as
#15 with a channel.force(false) added to each write. The total bandwidth
is
less than 1/2 that of #15, suggesting that Jan is correct.
But test #17 uses "rw" without a force, (which is what I think Jan
suggested)
and for this test, the write bandwidth is 255 MB/s, 10x faster than #16
and
4x faster than #15.
I'm not really sure what can be concluded from this. How can we be
certain
that "rwd" is honoring the guarantee not to return till data is on media?
Michael Giroux, Objectweb.org
-----------------------------------------------------------------------
15. Testing preallocated file using direct buffer + FileChannel "rwd"
-----------------------------------------------------------------------
Chunk size: 4228 bytes
Count: 5000
Total time: 329 ms
Writes per second: 15197.568 writes/s
Time per chunk: 0.066 ms
Write bandwidth: 61.0MB/s
----------------------------------------------------------------------------
16. Testing preallocated file using direct buffer + FileChannel "rwd"
force(false)
----------------------------------------------------------------------------
Chunk size: 4228 bytes
Count: 5000
Total time: 859 ms
Writes per second: 5820.722 writes/s
Time per chunk: 0.172 ms
Write bandwidth: 23.0MB/s
------------------------------------------------------------------------------
17. Testing preallocated file using direct buffer + FileChannel "rw" no
force
------------------------------------------------------------------------------
Chunk size: 4228 bytes
Count: 5000
Total time: 79 ms
Writes per second: 63291.139 writes/s
Time per chunk: 0.016 ms
Write bandwidth: 255.0MB/s
C:\GIROUX\HOWL\Derby Benchmark>