I'm getting only 30MB/sec between my computer and a USB drive, despite the fact that USB 2.0 supports 480Mb/sec (or 60MB/sec) transfers. (Therefore, I'm only getting half the rated speed) Is there something present in the USB standard which should result in such half apparent speeds?
|
|||||||||||||
We're looking for long answers that provide some explanation and context. Don't just give a one-line answer: please explain why you're recommending it as a solution. Answers that don't explain anything will be deleted. See Good Subjective, Bad Subjective for more information. |
|||||||||||||
|
Your flash drive is the bottleneck. They can't reach the 60 MB/s theoretical maximum. Here's an excerpt from Wikipedia:
|
|||||||||||||
|
|
Around 30mb/sec is quite typical maximum transfer speed. USB1.0 and USB2.0 connection is half-duplex, meaning data flows in only one direction at a time. Shared connection between both directions is probably biggest reason for slower than expected transfer speed. In comparison USB3 and Ethernet are full duplex and do meet expected transfer speeds better. In my machine USB2 flash drive speed never exceeds 33mb/s in test application. Though windows reported 33-37mb/s speed. I done some testing and enabled disk cache(device properties) and increased usb max transfer size to 2mb (KB2581464) but could not make it any faster. |
|||
|
|
|
With an iMac mid-2007 and one Verbatim USB2 disk transferring data to a FW800 drive I get 36-37 MB/s. It's already very good for USB2. If I add a second transfer from another USB2 disk (Packard Bell) connected to the same USB2 hub to the same FW800 drive, the combined transfer rate increases to 42 MB/s. This is exceptional and it's the highest transfer rate I have ever seen on USB2. More than 35-40 MB/s on USB2.0 is practically impossible and I was already dedicating a USB2 controller only for those disks, no mouse or other devices interfering. |
|||
|
|
|
I have never really thought much about calculating the speed, but clearly there is real overhead associated with this kind of transfer. I searched on Google and found post after post with speeds as you described, making me thing you are on to something. I just whipped out a USB 2.0 1TB Seagate external drive, formated it, and decided to copy a sampling large enough to test with: 13,595,211,905 bytes (about 12GBs). I am running Symantec Endpoint Protection AV. According to this calculator, it should have taken only 3:46 minutes to copy with 0% overhead, but it actually took 9:17, and my speed dropped to 23.9 MB/sec actually. I then rebooted (to clear the memory), and tried it without my AV running and it still took 9:15, or only 2 seconds less (I guess that is good news for Symantec AV at least). It would appear that those really are "theoretical numbers". |
|||