Robocopy single- and multithreaded benchmark on Windows

When copying files, a commenter on my robocopy post wondered if a multithreaded copy tool like robocopy is actually quicker than a single-threaded copy tool like xcopy because the hard disk is usually the bottleneck, not the CPU. I decided to create my own benchmark because I couldn't find any. The following are the outcomes:

I duplicated a folder structure with 429 folders and 6313 files totaling 522 MB in my test. Every test has been repeated twice to confirm that the speed discrepancies aren't due to filesystem caching. I understand that this was not a scientific test, so if you have your own results, please share them in the comments section.

xcopy benchmark

Command:

xcopy D:\server\test D:\tmp\test /D /E /Y /Q

Time to copy files

First run: 42 seconds
Second run: 41 seconds

robocopy benchmark with 1 thread

Command:

robocopy D:\server\test D:\tmp\test /MT:1 /E /LOG:d:\tmp\robocopy.log

Time to copy the files

First run: 43 seconds
Second run: 41 seconds

robocopy benchmark with 10 threads

Command:

robocopy D:\server\test D:\tmp\test /MT:10 /E /LOG:d:\tmp\robocopy.log

Time to copy the files

First run: 38 seconds
Second run: 36 seconds

Conclusion

Using a multithreaded copy tool like robocopy with 10 threads speeds up file copying and makes sense if you have to copy a large number of files. At least on my system.