On Tue, 5 Mar 2002, Julian Elischer wrote:
>
> more writes fit in the disk's write cache?
For (1), it writes 15000 * 8192 bytes in all. For (2), it writes 15000 *
4096 bytes in all (assuming the random number distributes evenly between 0
and 8192). So your suggestion does not make sense to me.
-Zhihui
> On Tue, 5 Mar 2002, Zhihui Zhang wrote:
>
> >
> > I am doing some raw I/O test on a seagate SCSI disk running FreeBSD 4.5.
> > This situation is like this:
> >
> > +-----+----+----+----+----+----+----+----+----+----+---+------
> > | | | | | | | | | | | | ....
> > +-----+----+----+----+----+----+----+----+----+----+---+------
> >
> > Each block is of fixed size, say 8192 bytes. Now I have a user program
> > writing each contiguously laid out block sequentially using /dev/daxxx
> > interface. There are a lot of them, say 15000. I write the blocks in two
> > ways (the data used in writing are garbage):
> >
> > (1) Write each block fully and sequentially, ie. 8192 bytes.
> >
> > (2) I still write these blocks sequentially, but for each block I only
> > write part of it. Exactly how many bytes are written inside each block is
> > determinted by a random number between 512 .. 8192 bytes (rounded up a
> > to multiple of 512 bytes).
> >
> > I find out the the performance of (2) is several times better than the
> > performance of (1). Can anyone explain to me why this is the case?
> >
> > Thanks for any suggestions or hints.
> >
> > -Zhihui
> >
> >
> >
> > To Unsubscribe: send mail to [EMAIL PROTECTED]
> > with "unsubscribe freebsd-hackers" in the body of the message
> >
>
>
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message