4 ms·
Jeff: I see a possible problem with your tests that bit me before! ipferf3 is not multithreaded by default. The more capable computers probably have an interrup
by exabrial 6mo ago
Jeff: I see a possible problem with your tests that bit me before! ipferf3 is not multithreaded by default. The more capable computers probably have an interrupt rate sufficient to handle 10gig over USB (which likely multiplies the interrupt rate needed), but it's completely possible you're pushing the interrupt rate limits on the Macbook Neo and other lower powered hardware.
Any chance you could re-run with `-P 4` where 4 is the core count?
- geerlingguy 6mo agoI ran all the tests at P 2 and P 4 to verify cpu cores weren't hindering the speed, but got the same result (within 2%). Modern A/M cores and Zen 5 cores individually have enough grunt to handle at least 10 Gbps through USB without a hitch. On my Pi's and N100 mini PCs, I do have to use threads to hit more than about 5-6 Gbps. And testing a 25 Gbps adapter I'm testing separately, I had to use multiple threads to get my Ampere CPU to measure speeds greater than 10 Gbps.
- exabrial 6mo agoAwesome! We had a Intel Atom board with 10g, and we could never get iperf3 to saturate the interface until we used `-P`!
- dd_xplore 6mo agoOr Better use only iperf (or known as version 2), it has multi threading support
- fulafel 6mo agoA single threaded benchmark better represents real performance, I'd argue. 10 Gbps is only 1.2 GB/s after all and few applications use parallel streams.
- stonegray 6mo agoI think the intention is to measure the adapter itself independent from the CPU/overall system. Besides, I can’t think of a typical single threaded application that would use those data rates, can you?
- iknowstuff 6mo agoSteam downloads
- stonegray 6mo agoSteam download rates are throttled based on how fast it can actually install the game so it’s a bit of an outlier
- fulafel 6mo agoFile transfer and storage (Dropbox, browser download, rsync, scp, NFS/SAN etc) is a classic use case that can utilize all the bandwidth you have and typically uses single streams between client and server.
- deleted 6mo ago[deleted]
- dgacmu 6mo agoMost modern ethernet chips, including those used on USB ethernet devices, have adaptive interrupt coalescing (or moderation) for network I/O, which renders this likely not as big a deal as it once was. There will still be limits on packets/sec/core but it's not because of interrupts.
- aesh2Xa1 6mo agoTry using iperf3 version 3.16 or better. There used to be a multi-threading problem otherwise. https://software.es.net/iperf/faq.html https://software.es.net/iperf/faq.html