OdeToCode IC Logo

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.