Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
Hi, On 21.06.2011 17:36, Felix Frank wrote: > On 06/21/2011 05:15 PM, Noah Mehl wrote: >> The results are the same :( > Sorry to hear it. 'dd' is probably not a good benchmark when throughput approaches the 1GByte/s range. With 'dd' on a system with similar performance (8x15k SAS disks, LSI, 10GBE), I get 1GByte/s into the local block device but only 600MByte/s into the DRBD device. Using another benchmark ("fio" with async-I/O and larer values for I/O-depth), I can get up to about 1.2GByte/s in both cases. 'dd' uses a simple read-write loop which is prone to throughput degradation due to latencies. Even though DRBD only adds the network latency, the amount of added latency becomes significant compared to the latency from the actual disk writes. Also, Noah used probably far too big buffers for dd. It seems there is some significant overhead when the kernel has to move 1GByte chunks in and out of user-space: ---8<--- # dd if=/dev/zero of=/dev/null bs=1M count=10240 ... 10737418240 bytes (11 GB) copied, 1.34667 s, 8.0 GB/s # dd if=/dev/zero of=/dev/null bs=1G count=10 ... 10737418240 bytes (11 GB) copied, 2.32565 s, 4.6 GB/s --->8---