Why variable speed of data flow from SD card to HDD?

  Pineman100 10:45 21 Apr 14
Locked
Answered

This question is for my own interest and information, rather than to fix a problem.

My laptop runs Windows 8. When I plug in the SD card from my camera, to copy photos on to my hard drive, I can see a graph of the speed of data flow from the card to the computer.

The graph usually shows a peak of over 50 MB/s for the first half-second or so, followed almost immediately by another similar peak. After that, it settles down to variable speeds of between about 10 MB/s to 30 MB/s.

Why is this? I would expect the rate of data flow from the SD card to the computer to be constant - so why does it vary so much?

I'd love to know, please!

  Batch 11:48 21 Apr 14

Don't think it is anything to do with copying from an SD card, it's just that the Windows copy process does not count very effectively.

For example, I get very similar effects if I copy a file from one part of my hard disk to another part of the disk. I just tried copying a 6GB file. Started off (as quickly as I could get it to show the detail) at 277MB/sec, then dropped off over time to 63MB/sec.

I guess it is down to things like rounding errors in the way it counts and maybe counting the read cycle (rather then the write cycle or the complete cycle) and so in the initial seconds a lot of buffering goes on which makes the transfer seem faster than it really is.

Bottom line - don't worry about it.

  Fruit Bat /\0/\ 12:00 21 Apr 14

I assume its search for file fragments on the card and also for storage space in the sectors of the hard drive.

a fully defrag card and HDD I would expect data transfer rate to be higher and more constant.

  alanrwood 19:21 21 Apr 14

Also when copying date it is not copied as a whole but in parcels (packets) and each parcel is error checked and the information on this exchanged from the receiver to the sender. If there is an error the packet is sent again. There is also timing signals to contend with as well as handshaking. Thus data does not flow at a constant rate. Try comparing the rate for sending one large file compared to sending several small ones, the latter is always much slower.

  cream. 19:48 21 Apr 14

It is the cache.

Hard drives, dvd drives, memory modules,usb drives, ssd drives all have a cache.

This is a physical place on the device where data is stored ready to be used. The initial feed of this information is the burst rate of the cache. This will send a small amount of data at a very fast rate, when the cache is emptied it has to seek the information before filling the cache. that is why with usb sticks, ssd drives etc you get an initial flood of data and then a steady slower stream.

click here

  rdave13 20:14 21 Apr 14

Also I've found that Windows will transfer a large amount of jpeg files faster then any avi or video files. Even with e-sata. So it will also depend on the files in your folder.

  Pineman100 17:37 22 Apr 14
Answer

Well, many thanks to everyone for a very enlightening group of responses!

I'm not sufficiently knowledgeable to comment on any one answer in particular, but they all sound very interesting and plausible as contributory factors to the whole experience.

Thank you for taking the trouble to contribute to my education!

  alanrwood 19:16 22 Apr 14

Hey I think we have all learned something so you are not alone

This thread is now locked and can not be replied to.

How to get Windows 10 for free | How to install Windows 10: There is still a way to avoid paying…

1995-2015: How technology has changed the world in 20 years

Alex Chinneck’s giant ice cube Christmas tree at Kings Cross

Apple rumours & predictions 2017: The iPhone 8, new iPads, and everything else you should expect fr7…