The bandwidth is per Controller.
A transfer takes place every time data is moved between the host
controller and the USB device. In general, USB transfers can be
broadly categorized into control transfers and data transfers. All USB
devices must support control transfers and can support endpoints for
data transfers. Each type of transfer is associated with the type of
USB endpoint (a buffer in the device). Control transfer is associated
with the default endpoint and data transfers use unidirectional
endpoints. The data transfer types use interrupt, bulk, and
isochronous endpoints. The USB driver stack creates a communication
channel called a pipe for each endpoint supported by the device. One
end of the pipe is the device's endpoint. The other end of the pipe is
always the host controller.
A connection with the USB device is to the USB controller. A device
may also use as much bandwidth as they want. So thus the bandwidth is
USB 3.0 Controllers will have both a USB 2.0 and and USB 3.0 controller. So USB 3 devices will not be affected by USB 2.0 devices when connected to the same controller.
Now lets see if I can find a reference in Wikipedia for this. . .
For SuperSpeed USB (defined since USB 3.0), connected devices can
request service from host. Because there are two separate controllers
in each USB 3.0 host, USB 3.0 devices will transmit and receive at USB
3.0 data rates regardless of USB 2.0 or earlier devices connected to
that host. Operating data rates for them will be set in the legacy