Copy fragmented files faster

  • updated

Teracopy can speedup the copying by asking windows the cluster numbers of the files before copying and doing the copy in a non standard linear order, the hard drivers are much more faster if you read the data sequentially, than if you make he head to go forward and back all the time, for example, file heavily fragmented (sparse downloaded torrent/emule file or file with the compressed attribute set) with 100.000 typical fragments.

- Reading clusters in ascending or descending order is much more faster (even if they are not consecutive) that making the drive head to go forward and back all the time.

- Small distance between clusters read faster than large distance


FILE.DAT cluster numbers:

44, 510, 421, 670, 112, 78, 60

Source drive changes head direction 7 times.

Fast copy in this order:

pass1 (forward): 44,510,670

pass2 (backward): 60,78,112,421

Source drive changes direction 1 time. Speed improvement 7x on heavily fragmented files.

This is a small example, in large files more passes will be needed, and the improvement can be dramatic, this method needs the destination file to be totally allocated before starting the process, and it can not be done if the source file is in a network drive because you do not have the cluster numbers available.

This algorithm can also be improved much more, but now you have the basic idea behind.