On 2/13/2012 10:58 PM, Jay Norwood wrote:
Attached is the source for a small parallel app that copies a source folder to
a destination. It creates the directory structure first using the breadth
ordering, then uses a parallel foreach loop with the taskPool to copy all the
regular files in parallel. On my corei7, this copied a 1.5GB folder with
around 36K entries to a destination in about 11.5 secs (src and dest on the
same ssd drive). This was about a second better than robocopy, which is the
fastest alternative I could find. The regular win7-64 copy takes 41 secs for
the same folder.
I'd like to add wildcard processing for the sources, but haven't found a good
example.
more of an 'FYI/reminder':
At a minimum Robocopy does additional work to preserve the timestamps
and attributes of the copies of the files (by default) so it can avoid
redundant copies of files in the future. This is undoubtedly creating
some additional overhead.
Its probably also quite a bit worse with /SEC etc to copy permissions.
On the plus side you would have windows scheduling the IO which in
theory would be able to minimize seeking to some degree, compared to
robocopy's serial copying.