5

Let's say I'm copying a portable apps directory from PC to an external HDD. An application.exe file is around 4 megabytes in size, but most other files are only tens of kilobytes in size, and most of those files take longer to copy/move than that bigger file having 4 megabytes.

Why is this?

5 Answers 5

9

When transferring data, if you move one large file, you only have to write the directory entry once and then stream the data and write more or less continuously. When you have many files, you write the directory info, move to the file area and write the data, then go back and write the directory entry for the next file and then move back to the data area and write the data and back and forth. The overhead of moving back and forth adds up.

8

If you transfer a file, theres an open+read+close at the source, and an open+write+close at the destination, with all the associated attributes (ctime/atime/mtime etc) being created at the destination. Fragmentation (higher seek times) will also affect the datarate. Congestion of e.g. a sata-channel may also be an issue (use a separate ports for each disk, buy a sata card if you run out). Bigger files have longer consecutive reads or writes, and will transfer faster. Im sure there's much more to it. Does this help you?

2

That's the way windows works, and that's the part HDD are bad at. Usually SSDs are good at copying small files. You can check out benchmarking of HDDs and SSDs about file transfer speeds. But you have to know that other things are in place, like windows is reading first the files, then your antivirus checks them, and then they get written to the new destination folder. Not to mention that when you cut a file, the deletion process is added. So, more files, more "real" time added to copy a bigger number of files.

0

Because data which is written to (external) hdd is not cached, but written directly to the hdd, and an usb drive then also has to work the index (fat, allocation table) for every file, so it has to scratch the hdd back and forth from file data to file allocation data. Because if failure when cached, files will be lost, hdd corrupt, etc. Internal drives can be cached. Then it can like burst the files to hdd. In fact they do it to slow you down, like the whole commercial computer business. Further drivers on usb hdd drives are not intelligen, nor is the hdd. People want cheap stuff.

Cache settings....

Don't they say it on the description of the hdd, no, off course not. They only mention the large file transfer rate.

4
-1

Think of it like this,

The computer is assigned a task to take 10 books (10 files) from point A to point B, If they are individual then the computer needs to get one take it to point B and then come back to point A to pick up the next book and so on. Whereas if it needed to take one big book that was the equivalent weight of the 10 books combined it would take longer to move the book but it will be a quicker process because the computer only makes one trip.

1
  • 1
    Nice metaphor, but I can't see why the two processes are similar. Oct 5, 2018 at 4:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .