Where is my bottleneck?
conway at us.ibm.com
Thu Mar 11 20:53:00 GMT 2004
This seems obvious, but it's easy to forget. Are all the filesystems on
both ends locally-attached? If they're NFS or SMBFS, rsync is about a
third the speed of SCP, unless you use "-W" to tell it to send the whole
file if the timestamp/size don't match... in most cases, anyway. ethernet
lan and dialup wan to the remote server, I'd probably go ahead and let it
use the rsync algorithm.
Try not using "-z"... Actually, maybe you already aren't.
Here's a strange one for you to try.
I'm sure you're running wide open. Try using --bwlimit= to hold it back a
bit. If your network is chattering, backing off the throttle might get
you down the track a hair faster.
Since everything is inside, try opening up rsh for a while (don't leave it
open if you're internet-connected.)
time dd if=/dev/zero bs=1024k count=1024k |rsh host2 dd of=/dev/null
That'll give you a good idea of what your network can do.
Try tarring up whatever you're sending by rsync, sending it straight to
Feed it through dd for a byte count.
time tar -cf - whatever |dd of=/dev/null bs=1024k
Some controllers don't do very good high-speed/volume I/O. Cache will
keep things seeming fast, but when you go past cache, you see the true
speed of your disk subsystem. The above test will show you some of that.
if read's good, check write
time dd if=/dev/zero bs=1024k count=1024k
Unix System Administration
Contractor - IBM Global Services
conway at us.ibm.com
I'm running rsync via ssh on two machines connected with 100 Mbit/s
Ethernet cards (at high speed) via a Linksys switch. It's all right
here in a single closet. I'm sending large files (initial transfer,
nothing preexists on the destination machine) and seeing transfer rates
in the 2 Mbit/s range. The CPUs on both machines are more than 90%
idle, and I upped the --block-size to 256 kilobytes. Disk activity is
very light. Fedora Core 1, i686.
I don't expect 100 Mbit/s by any means, but 2? Is this typical? What
am I missing?
More information about the rsync