Guide: Understanding USB 3 hubs and daisy chaining for miner setup



  • I created a diagram showing USB 3 hub electronic design and limitation, set up with 63 Seagate 8TB external HDDs with integrated 2-port hubs. I have not tested this setup, and it may or may not bottleneck at some point, depending on various factors. If the integrated hubs on the HDDs are inferior to 'regular' USB 3 hubs, then the setup can be changed by involving more regular hubs of course. The main rules one must follow are outlined in the introductory paragraph in the diagram.

    The advantage of daisy chaining directly through the integrated hubs is saving money where you would otherwise have to buy extra hubs.

    EDIT
    10th of December: Updated diagram to reflect USB 3 speed, according to https://en.wikipedia.org/wiki/USB_3.0.

    0_1481379538658_Screenshot 2016-12-10 15.17.08.png



  • @Propagandalf I think it will be a massive bottleneck and despite having multiple drives you will only see the read speed of a single drive.

    I have moved away from Hubs completely and either connect to the USB3 connectors on the main board or to a PCI-e Bus USB interface with individual channels per drive.

    However will be interested to see what your read times are as you increase the number connected drives?

    Rich



  • I'm having a pesky problem with my USB 3.0 hub. It can only connect to a maximum of 12 drives. It just won't detect any more drives. I have a powered hub. MY board is B85-Pro Gamer, proc i7. I'm at a loss of what the hell is going on. I'm using another PCs just to run all of the drives. I want to run at least 16 in my main set up. Can anyone tell me why this is happening?



  • @RichBC said in Guide: Understanding USB 3 hubs and daisy chaining for miner setup:

    I think it will be a massive bottleneck and despite having multiple drives you will only see the read speed of a single drive.

    I'm not quite sure why you reckon we would only see the same read speed as that of a single drive? Theoretical max speed of one USB 3 host controller is 625 MB/s, but I have been told 320 MB/s is a more likely number. When we mine our plots, we only need to read one scoop out of 4096 each round, which represents 0.025 % of the total size of plots. So, if we have 504 TB of plots (504 000 000 MB), we only need to read 504 000 000 x 0.00025 = 126 000 MB in one round.

    126 000 MB per round / 320 MB/s (controller likely speed) = 394 seconds (6.6 minutes). Total round time of 6 and a half minutes is too long for most people, but that can be improved by dividing the HDDs onto multiple USB 3 controllers using a dedicated USB 3 multi controller card (maybe this is what you mean by PCI-e Bus USB interface with individual channels per drive/port). Read speed will also be impacted by the read speed of the HDDs themselves, as well as CPU/GPU/motherboard. This illustration is, however, an attempt to show when the USB 3 host controller itself will become a bottleneck, based on the amount of connected devices, and also based on the max bandwidth provided by the USB 3 host controller.



  • @Propagandalf All I am saying is that with that configuration a single drive will max out the USB3 interface, whereas if the drives have separate interfaces then they can be read in parallel up to the capacity of the CPU. My 75TB of USB3 drives are read in 10 seconds.

    Rich



  • @RichBC

    Actually, the 8TB backup plus HDDs from Seagate have 160 MB/s as max data transfer speed, so you would need two of them to max out the USB 3 interface using only one host controller. You can therefore read these two drives in 13 seconds total, in theory. You can also buy cards with multiple USB 3 root controllers that connect to PCI-e slots, so that you can get good parallel read times without being limited by one host controller, given that your PCI-e slots support such bandwidth. It's all about finding the bottlenecks. 🙂

    For those interested, in a mining context with 8TB plots, the CPU or CPU/GPU will need to read 2000 MB from a single 8TB drive (through the USB 3 bus).