Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I noticed that if I transfer a few large files between two hard drives, it's pretty speedy, at around at least 30 MB per second, but if I transfer thousands of files less than 5 KB, it is pretty damn too slow.. around 1 to 2 MB per second.

Is there a way to speed up the copy/paste process with thousands of small files on Windows 7?

share|improve this question
add comment

5 Answers

ZIP the files and then transfer the larger ZIP file? I don't know how long it would take to ZIP though (and if the total time is faster).

share|improve this answer
3  
You still have to read all files on the source side and write all of them at the target side. It won't be faster. You'll just lose time for zipping them up. –  Joey Mar 28 '10 at 23:02
    
Actually, this works for me in my situation as I was really wanting to back up files... I don't care about unzipping. Zipping thousands of files sure worked... a zipped file was much faster than the usual copying. But yeah, I did try to unzip and it takes a while. Thanks for the suggestion. –  netrox Mar 29 '10 at 3:10
    
No problem; glad I helped. :) –  Kevin Y Mar 29 '10 at 3:38
add comment

It's possible that part of what is slowing you down for many small files is if they are not in the same physical area of the disk. On a drive which is not very fragmented, a single large file will mostly all be read from one place, but if you have to read a bunch of separate files, they may be scattered across the disk.

ZIPing was the first idea that came to mind for me as well, but as pointed out above, you'd lose time to that process anyhow. I have noticed that in general, copying with RoboCopy.exe goes faster than doing it through the GUI. You might want to play around with that and see how it works for you.

share|improve this answer
    
You'll lose most time due to the frequent switching between file content and the MFT entries. Where the individual files are located on the disk is nigh irrelevant here. –  Joey Mar 28 '10 at 23:20
add comment

It might be worth trying a quick defrag before ZIPing anything, but this is only really if you will be moving lots of small files, very often. If not then I suggest just zipping it (with 7zip or something - which will often compress better than just Windows standard compression) and then copy across.

And it also depends on the harddrives. Is this a USB external hard drive or 2 that are in the same system? If it's an old external hard drive it may be using USB1.0 or you may be better off having one with a power supply.

share|improve this answer
add comment

You might want to take a look at TeraCopy which is a program designed to copy and move files at the maximum possible speed by dynamically adjusting buffers to reduce seek times. TeraCopy can also do asynchronous copying which speeds up file transfer between two physical hard drives.

I have personally used this application and have found that it does speed up file transfers which usually would take some period of time to accomplish.

Hope this helps some.

share|improve this answer
    
Thank you for the suggestion. –  netrox Mar 29 '10 at 3:06
    
@netrox: highly, highly recommended Teracopy. +1 –  studiohack Mar 29 '10 at 4:40
add comment

ZIP has a 4 GB file limit (or something like that) - I usually use RAR archiver (it doesn't have that file size limit) and specify to not compress at all - this way archiving into a single file happens very fast, and then I simply copy that big file.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.