Tool/software: TI-RTOS
EVM 66AK2H12, SYS/BIOS 6.50, XDCtools 3.50, NDK 2.25
Started w/ the NIMU_emacExample_EVMK2H_armBiosExampleProject from the PDK examples. I converted this to TCP.
I modified the example to continuously send data, sending 50,000 bytes at a time after a client connects. By that I mean calling send( connectedS, pData, 50000, 0); in a loop.
For the client, I started with the recv example in the NDK winapps example directory and modified it to just receive data, printing out the statistics on bytes received per second.
I was only getting about 40 Mbytes /sec. I was expecting much better, a little over 100 Mbytes / sec.
Then I found that I had not set the CFGITEM_IP_SOCKTCPTXBUF TCP (Transmit allocated buffer size) so it is at its default. By setting it to 25,000 or even 51,000 I am seeing > 115MB/s on my crude client test (running on Windows).
My test measurements are crude (based on the recv client code) and I know I’m up against the maximum actual throughput expected for Gigabit Ethernet but am I missing any other configuration items that might gain me any additional marginal improvements?
What is the default for CFGITEM_IP_SOCKTCPTXBUF TCP?
Mike