Multithreaded Robocopy

Thursday, July 8, 2010

I was working with a fresh install of Windows Server 2008 when I noticed a new parameter in Robocopy's usage output:

            /MT[:n] :: Do multi-threaded copies with n threads (default 8).
                       n must be at least 1 and not greater than 128.
                       This option is incompatible with the /IPG and /EFSRAW options.

/MT is available in both 2008 and Win7. I did an informal benchmark against 12 GB of data spread over 300 files. The copy source was on the other end of a 100Mb switch.

With /MT:8 robocopy ran for 16 minutes and 24 seconds (984s).

With 1 thread robocopy ran for 18 minutes and 45 seconds (1125s).

7 threads yielded a savings of 12%.

I thought the copy operation would be 99% I/O bound with only 300 files to move, but I suspect the savings might be even more significant with the same data spread over 3,000 or 30,000 files.

Josh Friday, July 9, 2010
Robocopy is pretty sweet! I am surprised I only recently discovered it :( I am also surprised by the savings as I assumed as you that I/O and Network latency would be the bottlenecks, not processor speed.
Comments are closed.

My Pluralsight Courses

K.Scott Allen OdeToCode by K. Scott Allen
What JavaScript Developers Should Know About ECMAScript 2015
The Podcast!