From: Henry N. <Hen...@Ar...> - 2008-05-27 23:47:07
|
Oliver Metz wrote: > Hi Henry, > I tried to run your "benchmark". Why do I get better results with sync mode? Did I miss something? > > Greets Oliver > > settings.txt: > cobd0=Drives\base.drv > cobd1=Drives\swap.drv > cobd2=Drives\home.drv > > # /usr/bin/time --format='real %e\nuser %U\nsys %S\nIO %w\n' -- dd if=/dev/zero of=/tmp/foo bs=200M count=1 > 1+0 records in > 1+0 records out > 209715200 bytes (210 MB) copied, 4.78007 seconds, 43.9 MB/s > real 4.78 > user 0.00 > sys 3.03 > IO 1 > # /usr/bin/time --format='real %e\nuser %U\nsys %S\nIO %w\n' -- dd if=/dev/zero of=/tmp/foo bs=200M count=1 > 1+0 records in > 1+0 records out > 209715200 bytes (210 MB) copied, 9.11014 seconds, 23.0 MB/s > real 9.12 > user 0.01 > sys 1.99 > IO 1549 > # uname -a > Linux andLinux 2.6.22.18-co-0.8.0 #1 PREEMPT Sun May 11 22:48:31 UTC 2008 i686 GNU/Linux Because the dd on sync mode has only one Operating System switch (Linux-windows and back, you can see "IO 1"). On async mode you have 1549 OS switches. The difference is, that all task are blocked 4.78 seconds in sync mode. In the async mode other tasks can run, for the time the blocks will be written on Windows side. The system is more usable in the time, and this adds time. Additionalny a liddle overhead is for an extra OS switch at end of every block. Async makes the complete system more smovly, but I/O is not faster ready. Your Linux can do other things, in the I/O-waiting time. See, that the "sys" time is smaller as in sync mode. Watch the cpu load via "top" at the async test. Cpu is idle more. ;-) -- Henry N. |