The latency of many many small random IO operation adds up:
- access and seek times of file system and hard disks
- comparison times of rsync
In my experience is rsync a very good tool to hold things in sync, but not a very good tool to submit all data as fast as possible. Use it when bandwidth or storage capacity don't leave other options. If you can afford to tar all files up and transfer in one blob, you can expect increased performance (overall wall clock time used to complete to operation), if there are enough files.