Tegra X1 ethernet performance

I have run into a network latency issue with my TX1 boards. Since I’m no expert on this type of low-level detail, I figured I’d simply ask here for some feedback. It is very easy to reproduce. The issue is that I’m getting network latency from the TX1 boards that is 5–10x higher than I would expect from a typical gigabit NIC. For example, even in simple ping times from one card to another on an isolated gigabit network I get a network latency of about ~2ms. And even pinging itself i.e. “ping localhost” yields times that are ~0.5ms which are values 10x higher than they should be.

I have also used some more sophisticated MPI tools like mpi_latency and osu_latency tests and can confirm the same outcome. I’m assuming it is some setting in the OS or driver which should be something that is not too hard to address. Could someone please get me some assistance on this?

Thanks in advance.

Hello, GKHanna:
Would you please provide more details about your test case for ethernet latency?
As you mentioned ‘ping localhost’, I tried in my side.
To get similar result with PC, it’s better to boost TX1 CPU/EMMC frequency.
Generally, when system loading is low, those clocks will keep in low level to save power.
localhost ping result and tegrastats result will look like:

64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.075 ms
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.590 ms
64 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.765 ms
64 bytes from localhost (127.0.0.1): icmp_seq=4 ttl=64 time=0.802 ms

RAM 414/3853MB (lfb 782x4MB) cpu [0%,0%,0%,1%]@102 EMC 2%@68 AVP 2%@80 GR3D 0%@76 EDP limit 1734
RAM 414/3853MB (lfb 782x4MB) cpu [3%,0%,0%,2%]@102 EMC 0%@1065 AVP 2%@80 GR3D 0%@76 EDP limit 1734
RAM 414/3853MB (lfb 782x4MB) cpu [0%,0%,0%,1%]@102 EMC 2%@68 AVP 2%@80 GR3D 0%@76 EDP limit 1734
RAM 414/3853MB (lfb 782x4MB) cpu [0%,3%,0%,2%]@102 EMC 2%@68 AVP 2%@80 GR3D 0%@76 EDP limit 1734
RAM 414/3853MB (lfb 782x4MB) cpu [5%,0%,4%,2%]@102 EMC 2%@68 AVP 2%@80 GR3D 0%@76 EDP limit 1734

After boosting the system, the result will look like:

64 bytes from localhost (127.0.0.1): icmp_seq=43 ttl=64 time=0.045 ms
64 bytes from localhost (127.0.0.1): icmp_seq=44 ttl=64 time=0.041 ms
64 bytes from localhost (127.0.0.1): icmp_seq=45 ttl=64 time=0.038 ms
64 bytes from localhost (127.0.0.1): icmp_seq=46 ttl=64 time=0.038 ms


RAM 421/3853MB (lfb 769x4MB) cpu [0%,0%,0%,0%]@1734 EMC 0%@1600 AVP 2%@80 GR3D 0%@998 EDP limit 1734
RAM 421/3853MB (lfb 769x4MB) cpu [0%,0%,0%,0%]@1734 EMC 0%@1600 AVP 2%@80 GR3D 0%@998 EDP limit 1734
RAM 421/3853MB (lfb 769x4MB) cpu [1%,0%,0%,0%]@1734 EMC 0%@1600 AVP 3%@80 GR3D 0%@998 EDP limit 1734
RAM 421/3853MB (lfb 769x4MB) cpu [1%,0%,0%,0%]@1734 EMC 0%@1600 AVP 3%@80 GR3D 0%@998 EDP limit 1734

br
ChenJian