Here is the latest update.
I am running on Linux, so I cant use the benchmarking tool linked above. Using the built-in Ubuntu "Disks" tool, i benchmarked the drive. The read speed was 3200 mb/s and write speed was 2700 mb/s - so no problems there.
For testing purposes, I tried running the exact same code on a different machine. In this case it was a laptop that has 2 USB3.0 ports. The code ran successfully and 2 cameras were ran in parallel in 16bit mode. Because there are only 2 ports, I cannot try running the third camera to see if this causes issues.
So the question is, what is different between the laptop and the desktop?
Running the command "lsusb" on the desktop shows (amongst other things):
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Running the same command on the laptop shows (amongst other things):
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
This suggests to me that the three USB3.0 ports on the desktop are being controlled by a single "Linux Foundation 3.0 root hub", whereas on the laptop the two USB3.0 ports each have their own "3.0 root hub". Unfortunately the laptop doesnt have a third USB3.0 port, so I cannot test if a third camera would cause problems.
The next step in my testing is to install a PCIe card with four USB3.0 ports on it, which should arrive in the next few days. Hopefully running the cameras from a PCIe slot will avoid using the single available "3.0 root hub" and allow the cameras to run in parallel.
I will post another update once I have tried this.
ldjb