Quantcast
Channel: Embedded Community : All Content - All Communities
Viewing all articles
Browse latest Browse all 3032

i210 ARM performance issues in iNVM mode

$
0
0

Hello, we are using an i210 NIC on a Tegra K1 ARM platform.

 

Our reference testing has been done with a PCIe card (MPX-210D-G - Intel i210-AT Mini-PCI Express (Mini-PCIe) Gigabit LAN Module Commell) on a Jetson TK1 development board. This PCIe card has an external NVM flash chip and the device ID appears as 0x1531. In this situation, the NIC performs fine for file transfers, Internet access, and GigE vision streaming (our production use case).

 

eth0      Link encap:Ethernet  HWaddr 00:03:1d:10:7d:ff

           inet addr:169.254.2.2  Bcast:169.254.255.255  Mask:255.255.0.0

           inet6 addr: fe80::203:1dff:fe10:7dff/64 Scope:Link

           UP BROADCAST RUNNING MULTICAST  MTU:9000  Metric:1

           RX packets:747259 errors:0 dropped:0 overruns:0 frame:0

           TX packets:1314075 errors:0 dropped:0 overruns:0 carrier:0

           collisions:0 txqueuelen:1000

           RX bytes:2551469529 (2.5 GB)  TX bytes:10075762394 (10.0 GB)

           Memory:32200000-32300000

 

We have developed our own custom board with an embedded i210, but it is operating in iNVM mode and does not have external flash attached. The device ID enumerates as 0x157b. We were able to program the chip using eepromARMtool and we can use it for network file transfers, Internet access, etc. without difficulty. However when connecting to the GigE camera using GVSP, we find an unacceptably high packet drop rate. Note the drop/overrun packet count in ifconfig:

 

eth0      Link encap:Ethernet  HWaddr 00:50:c2:c9:9a:fc

           inet addr:169.254.2.2  Bcast:169.254.255.255  Mask:255.255.0.0

           inet6 addr: fe80::250:c2ff:fec9:9afc/64 Scope:Link

           UP BROADCAST RUNNING MULTICAST  MTU:9000  Metric:1

           RX packets:257864 errors:0 dropped:20960 overruns:20960 frame:0

           TX packets:450 errors:0 dropped:0 overruns:0 carrier:0

           collisions:0 txqueuelen:1000

           RX bytes:2308711001 (2.3 GB)  TX bytes:29940 (29.9 KB)

 

We have attempted the following:

* Increase MTU size to 9000

* Edit sysctl variables net.core.{rmem_max, rmem_default, wmem_max, wmem_default} to maximum value (33554432)

* Update i210 driver to latest stable version 5.3.4.4

* Run iperf tests on NIC (average result in all cases = 900 Mbits/sec)

* Verifying reference design works as expected (Jetson TK1 + i210 mPCIe card + PointGrey GigE Camera)

 

Short of kernel and driver debugging we have exercised all our debugging tools. The only hardware difference between our custom and reference design is the (lack of) external NVM. I would like to know whether Intel has any information regarding how iNVM mode can affect performance in general, and also specifically on ARM Linux.

 

Thank you,

Neel

 

edit 2016-04-06 formatting


Viewing all articles
Browse latest Browse all 3032

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>