Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

If I use a USB hub and connect devices to those expanded ports, I know that I will have reduced bandwidth and increased latencies to each of the devices connected to the hub.

However, if my computer has say 6 USB ports directly from the motherboard, does that mean that I can connect separate devices to one of each of those USB ports with each one of them essentially have its own dedicated USB connection to the CPU and be able to run at full speed with minimal latencies or is it that my computer only has one USB controller and the motherboard USB ports are already part of a hub?

Also, if I needed more dedicated USB ports, will adding PCI/PCI-e USB controllers give me more full speed ports, assuming my CPU can keep up?

This is assuming a mid ranged Dell workstation motherboard running a core i7 860 with windows 7 x64. Hoping to run a few USB enabled micro controllers get get some GPIO pins.

Thanks,

-Faken

share|improve this question

2 Answers 2

up vote 1 down vote accepted

Yes, your computer is pretty new, so most probably all your built-in USB ports have their bus and you should see no or little performance hit when using several of them simultaneously.

An extra PCI/PCIe card works in the same way, however, all your USB ports on that card will share the PCI bus. Now, the PCI bus is much faster than the USB bus, but you may occasionally see some increased latencies. However, this should not be much of a problem.

share|improve this answer

I know this is an old question, but the accepted answer gets a few things wrong:

  • Your motherboard most likely has only one USB host controller - a few select motherboards have two.
  • All devices on the same host share the same bandwidth, it doesn't matter how they are connected (480 Mbps on USB 2.0).
  • Hubs add some latency - in theory. Maximum roundtrip time for a USB connection is 1,500 ns. Removing a hub will shave off a couple nanoseconds. Unless your application needs sub-microsecond latency, this should be completely irrelevant.
  • A PCIe USB card has a host controller of its own, giving you more total bandwidth.
  • There's no reason to expect increased latency over PCIe. Depending how the internal USB controller is connected, it might as well be faster. Again, we are taking about differences well below a microsecond, not relevant in practice.
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.