more writes fit in the disk's write cache?
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