I agree that it's probably caching at some level. You're only writing about 120MB of data (and half that in your second case). Bump these to a couple of GB and see what happens.
Also, could you post your actual measurements? Lars Zhihui Zhang wrote: > The machine has 128M memory. I am doing physical I/O one block at a time, > so there should be no memory copy. > > -Zhihui > > On Tue, 5 Mar 2002, Rogier R. Mulhuijzen wrote: > > >>At 16:03 5-3-2002 -0500, Zhihui Zhang wrote: >> >> >> >>>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. >>> >>How large is your buffercache? it might be that the 15000 * ~4096 roughly >>matches with your cache, and 15000 * 8912 doesn't. >> >>Case (1) would require a lot more physical IO in that case than case (2) >>would require. >> >> Doc >> >> >> >>>-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 >>> >> > > > To Unsubscribe: send mail to [EMAIL PROTECTED] > with "unsubscribe freebsd-hackers" in the body of the message > -- Lars Eggert <[EMAIL PROTECTED]> Information Sciences Institute http://www.isi.edu/larse/ University of Southern California
smime.p7s
Description: S/MIME Cryptographic Signature