52

I've noticed that transfers between USB 2.0 drives are usually very slow. From what I understand, this is because all USB 2.0 devices connected to the same USB 2.0-host share the same 480Mb/s of bandwidth.

Is it possible to speed this up by using USB 3.0, ie connecting both drives to a USB 3.0 controller (like a USB 3.0 ExpressCard adapter)?

In other words, do USB2 devices get the full, unshared bandwidth each on a USB3 host?

13
  • 7
    Interesting question! Yes, you're right that the USB 2 controller shares the bandwidth between its devices.
    – slhck
    May 3, 2011 at 18:25
  • 12
    I can't believe I haven't thought of this yet... I'll be benchmarking it tonight. May 3, 2011 at 19:02
  • 1
    Related: Do I need USB3 sticks to get USB3 speed?
    – AndrejaKo
    May 3, 2011 at 19:49
  • Oooh, interesting question. Obviously they only work at USB2.0 speeds but...yeah! I dunno! I would THINK so but I really have no clue.
    – Shinrai
    May 3, 2011 at 20:18
  • 1
    @Kevin: There was a similar situation in the early days of USB 2.0. Some (cheaper) hubs had only one internal USB 1->2 translation unit (shared bandwidth for all usb 1 devices), others had one translator per port (unshared full bandwidth for each).
    – Martin
    May 3, 2011 at 23:12

5 Answers 5

30

According to the USB3 specification from here, USB2 functionality on USB3 hosts/hubs does not change. Therefore, (putting power issues aside) USB2 devices still operate with a broadcast method, meaning it will share the same old USB speed bandwidth with all other USB2 devices on the same host/hub. USB2 devices will not have USB3 capacity available to it, as the SuperSpeed USB3 capacity is on different wires that are not connected to USB2 devices.

Also, keep in mind each USB port may or may not be it's own host, depending on the hardware manufacturer. Sometimes they will have one host for each port, and sometimes one host will manage multiple ports. To find out for sure which hosts manage which devices, open up Device Manager, and click View -> Devices By Connection. Open up the "ACPI" devices, and then there should be a PCI Bus device under that. All of the USB Host Controllers should be under there. Try plugging the device(s) into different ports and see which Host Controller it appears in. Sometimes a Host Controller won't appear until there is something plugged into it.

USB3 SuperSpeed device's data transfers should work parallel to a USB2 device as it uses a different set of wires, and likely would not conflict or slow down any USB2 devices also working off of the same Hub/Host aside from maybe a little handshake talk when the device is first plugged in.

2
  • 2
    Nice find! Section 3.1 explains it quite well. I didn't know that USB 3.0 implements a dual bus, with USB 2.0 pretty much completely separated.
    – Martin
    May 24, 2011 at 18:41
  • I have a Lenovo E50-80 (model 80J2) - it features 2 USB 3.0 ports. I can use 2 1080p USB 2.0 webcams on these ports simultaneously even though each webcam draws about 15 megabytes/s alone and they will not work together when connected via a USB 2.0 hub. This means the USB 3.0 must do transaction translation from high-speed to super-speed. Surely such a transaction translation may not be a part of USB3.0 specs but in reality there seem to be devices that do perform this (VL670 for example). I monitored the data traffic with usbtop utility. Anyone has similar experience?
    – Kozuch
    Jul 13, 2018 at 12:39
3

The xhci specification clearly states that an individual controller may support multiple "bus instances", each representing a bandwidth unit, e.g. 480 mbit for high-speed. See the second and third paragraphs in section 4.6.15. The example provided there is 1 SS + 2 HS + 4 LS/FS for 7 distinct BIs of bandwidth divvied up between 8 physical ports. I'd love to know whether any shipping hardware implementations go the extra mile to implement it. I haven't been able to find explicit mention in the documentation for various chipsets. Given that superspeed-to-highspeed transaction translators are conspicuously absent from the USB3 spec, it would seem the best way to support a large complement of bandwidth-hungry USB2 devices.

-3

Nope. Power shortage.

The problem is that USBv3, even though with a higher power spec, cannot suffice two (or more) USBv2 devices to optimum power. Without the required power, the devices might not work or might work in a low power mode, albeit with reduced speeds.

If external power is supplied, a USBv3 hub can easily use the new full-duplex pipe for multiple legacy (v2, v1) half-duplex connections.

https://secure.wikimedia.org/wikipedia/en/wiki/Usb_3#Signaling

4
  • 1. The power isn't mentioned anywhere in the question. 2. Same thing could happen to USB 2.0 devices, because one port can't power whole hub. 3. You can't assume that a device will decrease it's transfer speed because of low power condition. It may refuse to work at all or it may attempt to save power in some other way.
    – AndrejaKo
    May 6, 2011 at 7:29
  • @AndrejaKo 1. It isn't, but it figures in. 2. It does happen with USBv2. And we do see reduced (v1.1) speeds when using via a hub. 3. I did say 'might not work or might work in a low power mode' May 6, 2011 at 7:30
  • 1
    The wikipedia page doesn't say anything about the issue (I checked there beforehand). I know that USB 3 has more than enough theoretical capacity, the question is how USB2-over-USB3 is implemented.
    – Martin
    May 9, 2011 at 13:38
  • 1
    It's unfortunate that the design provides no way for a USB 3.0 hub to reroute USB 2.0 traffic over the SuperSpeed bus. Aug 26, 2011 at 6:57
-3

Another way of possibly speeding up transfers between USB drives... By default in Windows, it will connect USB drives in a "Disabled Write-Caching" mode, that means it will be safe to remove the hard-drive at almost any time. There is a way you can enable write-caching for the hard drive, which might help with performance, especially where there is a lot of small files:

Open up Device Manager, find the Hard Drives category, and then figure out which of those devices is your USB hard drive(s). When you have discovered which one, right click on it, select Properties, and click on the Policies tab. There you will find the two modes of connection. Be careful with this though. If you don't "Safely Remove" hard drive with this mode on and you unplug it, you may well screw up the partition on the drive, and/or lose some or all data on it.

4
  • 2
    he is trying to find if USB 3.0 can speed up USB 2.0 devices, not how to increase the speed on it.
    – user78429
    May 21, 2011 at 0:09
  • 1
    Indeed. My answer was an possible alternative way to speed up USB 2.0 drive to drive copies as original asker mentioned that.
    – camster342
    May 21, 2011 at 6:21
  • But that is not his question. His question is " do USB2 devices get the full, unshared bandwidth each on a USB3 host?" and nothing in your answer relates to usb3.
    – user78429
    May 21, 2011 at 6:54
  • 1
    @bckbck and in the subject in big letters is the question "Using USB 3.0 to speed up transfer between USB 2.0 devices?". While i've acknowledged that this answer doesn't use USB3 in any way, it does pertain to part of his question.
    – camster342
    May 23, 2011 at 22:44
-3

has anyone tryed this ?

HOST------USB3_HUB_#3---------USB3_HUB_#1------USB2_HDD_#1
                       ---------USB3_HUB_#2------USB2_HDD_#2

the 2 additionnal hubs converting USB2 -> USB3 and the 3rd hub collects everything

1
  • 3
    As indicated in the accepted answer, there is no conversion, so this won't work. USB 3.0 "piggybacks" on USB 2.0, using a different set of wires. USB 2.0 runs in parallel from the host through all hubs to the devices.
    – Martin
    May 30, 2011 at 9:19

You must log in to answer this question.

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