Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm doing a system design in which many flash-memory devices are connected into a USB tree of hubs, and I need to estimate how long it will take for them all to do a download ... which is complicated by my lack of in-depth understanding of USB! I'm hoping to find a simulation that will let me explore some alternatives, but some experience-wisdom would sure help!

I have from 1..200 USB 2.0 devices each with 1GB to offload as quickly as possible. The scenario is that someone sets up the tree of hubs - 2-port laptop to a couple hubs, which each branch N-way until I get to the 200 leaves. (Fewer is certainly possible, there's no certainty they'll get handled in full-size batches.) Then, we start plugging in devices. When a device is available, we want to start an automatic download of the full 1GB memory from that device.

These will be "generation2" versions of some existing devices, so there's a mix of design freedom and legacy constraint... The devices will have both HID and MSD functions. They are USB 2.0 but have very limited CPU so I expect each device is limited to Full speed (12Mbps). The devices need to pick up charge while plugged in and downloading, so I gather I need to ensure the devices and hubs implement Battery Charging Spec v1.2 (hubs being "downstream charging"). I get to specify the hubs to be used, so they can be USB 3.0 or whatever. I think I can specify the peripheral devices will use Link Power Management though I'm not yet certain of the implications.

I don't know how bandwidth divides on a many-device USB setup like this, what's the impact of the plugging in and unplugging, would it be better to split the devices 100/100 vs 127/73 ... that sort of question. So, how do I guesstimate how long this will take (wall-clock time) to pull the 200GB into the laptop?

share|improve this question

SSD speed ... 100-600 MB/s;

HDD 10000 ~ 100-150MB/s; HDD 7200 ~ 70-120MB/s; HDD 5200 ~ 40-70MB/s

USB 1.0 ~ 12 MB/s;

USB 2.0 ~35 MB/s;

USB 3.0 around 3.2 Gbit/s (0.4 GB/s or 400 MB/s), but 100 ...150 ...200MB/s max 300MB/s at practic ...

USB 3 300MB/s: Thermaltake BlacX 5G - ASM1051 + Bulk-only transport.

registry play speedup USB:

HKEY_LOCAL_MACHINES\SYSTEM\CurrentControlSet\Control\usbstor\<usb device>
MaximumTransferLength DWORD <test good data at device>
DeviceHackFlags DWORD <test good data at device>

MCCI ExpressDisk UASP Driver:

UASP USB 3 Driver

MCCI vs Microsoft USB 3 UASP Driver


Practical book helps developers apply USB-interfaced mass-storage devices

PDF Universal Serial Bus Mass Storage Class Bulk-Only Transport

May be use HDMI?

HDMI 1.0 1080p 4,9 Gbit/s ... 612,5 MB/s;

HDMI 1.3, 1.4 10,2 Gbit/s ... 1275 MB/s;

share|improve this answer
Interesting, I didn't know about that driver, thanks! Looks like it brings UASP to USB2 ... But, I'm limited to Full Speed 12MBps at any one device, with a lot of device - s and that topology issue is what concerns me most right now. Any thought on that? – Wayne Mar 8 '13 at 22:59
@Wayne I add link, may be help ... – STTR Mar 8 '13 at 23:12

You must log in to answer this question.

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