Tijdreiziger 7 hours ago

Could you elaborate on why the USB ones are worse?

Per Wikipedia, USB 3.0 (from 2008) can reach 5 Gbit/s, so (naively?) one would expect them to reach 2.5 GbE line rate easily, right?

2
d_k_f 7 hours ago

I've only got superficial knowledge in this regard, so please take it with a grain of salt, but: the way I understand it is that PCIE has full direct memory access, so devices connected through it can use zero copy and similar techniques to access and process data much faster, especially with lower latencies than over regular USB. Using USB might/will require copying the data to transfer/read from and to different buffers, between user/kernel space, etc.

ComputerGuru 7 hours ago

USB doesn’t provide any DMA (until USB 4) and requires more host cpu resources to meet the same bandwidth. It also has less consistent performance by virtue of the USB protocol itself.

mianos 6 hours ago

I am confused by this, I worked on a Linux USB driver that used DMA in 2003.

ComputerGuru 6 hours ago

DMA from device to host directly rather than from host USB controller to host memory.

mianos 6 hours ago

When I worked on it, the USB controller was just a pci bus device that once set up, the incoming data, from a USB ADC, streamed the data in blocks directly to memory. Maybe they took all that back out.