This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Gigabit ethernet performance issues on TMDXEVM6678LE and EVMK2HX

One by one,

TMDXEVM6678LE: Rev 3B

CCS5.4,   NDK in MCSDK  2.1.2.6 ,   HUA test case, 

100MB data from windows machine.

The TCP throughput is about 271Mb/s while UDP is 152 Mb/s

EVMK2HX: Rev11

CCS5.4,  mcsdk_linux_3_00_01_12,  linux and iperf to a linux x64 host

0.0-10.0 sec  236 Mb/s on TCP

If I test between two x64 machines, the bandwidth is above 900Mb/s, so our network system should be good.

We actually test several boards we have and they all behave similar.

I wonder if there is that our test problem or the platform issue.

Thanks

  • Hey Yang, 

    I'm sorry, but I don't understand what your question is. Are you asking why the throughput isn't as high as you're looking for? Or is the system not working? 

  • Hi Katherine,

    Thanks for you response.

    The system works well.

    But  the throughput is supposed to be gigabit per second or at least close.

    It seems both our boards could only achieve around 250 Mbits/s while my x64 machine does quite different.

    Does this meet the specification or something is wrong there.

    That was my question.

    Thanks,

  • Yang, 

    Ah, I see. Okay. The switch can handle a maximum of 1Gbps for transmit unicast (combined between the two SGMII ports) and 2 Gbps receive (1 Gbps per port). 

    So things that could reduce your throughput: Not having your SERDES clocked at a rate of (10/8)* 1 Ghz = 1.25 Ghz.. The throughput is also highly dependent on the headers that are used in the user specific application. The 1 Ghz really comes from the data only usage. FYI, minimum size packets are assumed to be 84 bytes. 

    I would check all these conditions and see if you're meeting them to increase your tput. You may just have wrong configuration going on. 

    You also mention that your x64 machine does different. Does that mean your throughput is different for the same code on a different computer? 

    Reference Docs: 

    http://www.ti.com/lit/an/sprabk5a/sprabk5a.pdf

  • Katherine,

    The document you provide is awesome! That does solve me lots of concerns gathered in my past kernel development.

    That's great. I need to read it carefully to improve my stuff.

    About that x64, I mean running "iperf" on both EVMK2HX (with linux kernel in MCSDK) and our x64( with Ubuntu).

    The x64 could achieve more than 900Mbit/s in the test while the EVM got 250Mbit/s. That's difference I mean.

    Like you said I may screw some parts, but all what I've done are the out of box programs.

    Please check that for me.

    I appreciate your help.

    Thanks,