Now this might not be WD my cloud specific. But is there no way to have rsync use both CPUs while syncing?
I currently use rsync between two my cloud drives, I can see that it uses 100% of one cpu while the other core stays pretty much un used. Even though I’m using rsync with no md5 calculation, it maxes out at 19MB/sec on a gigabit lan.
My older my book live drives sync with each other at 26MB/sec. That’s because they have a single core cup but faster clock speed. Could rsync some how be compiled to be multi threaded?
That will invokde rsync (in the example) 24 times. but by separating the operations and breaking down the directories it may run faster. start with value 2 for $threads and increase gradually to find the optimum number.
It does not make rsync multithreaded though.
To make rsync multithreaded, you need to get the source, refactore it, find criticial chunks that can be threaded and recode it with threads (something like posix threads), taking care of race conditions, deadlock, rendeavous, etc… it can be done :smileyvery-happy:
True, its not multi threaded but rather simultanoes rsync tasks from what i understand…I can see that creating more I/O on the disk which might end up slowing down the file transfer itself…
Well, you could use the rsync -z flag to compress the packets before sending them.
That would give some more work for both the sending and receiving CPUs to do, compressing and uncompressing packets, whilst potentially increasing the throughput.