11-18-2019 11:10 PM - edited 11-18-2019 11:14 PM
I am testing the IWIP Raw mode TFTP protocol application to transmit the file from Host PC to the ZC706 board and visa Versa.
Below is a file transmission result log:
Total size of the msg_txt file = 10MB.
user@deep:~$ tftp 192.168.1.10
tftp> put msg_txt
Error code 3: disk full
Sent 238080 bytes in 0.3 seconds
I have two questions over here:
1) Data transmission speed seems to be very slow - ~0.70 Mb/s, How I can optimize it?
2) Not able to transmit large files, because of out of disk space on the FPGA board, who to increase the size of storage memory so It can also store the entire 10 MB file. (For the reference adding the screen-shot of my ld_script file)
11-19-2019 05:49 AM
Lwip parameters matter to tune performance, please refer to sections “Configuring Memory Options”, “Configuring Packet Buffer (Pbuf) Memory Options” and “TEMAC Adapter Options” in lwip library documentation to see more information on each parameter :
If you look at 2019.1 LWIP example from SDK, we have provided the following parameter settings.
PARAMETER mem_size = 524288
PARAMETER memp_n_pbuf = 1024
PARAMETER n_tx_descriptors = 512
PARAMETER pbuf_pool_size = 16384
The short overview is that, these control how much memory, how many pbufs and descriptors are allocated and used. If the system is strapped and unable to process the packets, the BDs and pbufs will be used up quickly and not freed as fast as required. So, performance will suffer. But we should also balance how much memory can be used. So, these parameters are tuned to some optimal values for 1Gbps on the evaluation boards.
This can be used as a reference to tune the parameters for your own requirements.
11-19-2019 08:21 PM - edited 11-19-2019 08:24 PM
11-27-2019 04:57 AM
@nanz I can increase the size of the MFS file system by providing the required size for the memory file system into the below function,
mfs_init_fs(<fd>, <required_number_of_bytes>, <Type of file system>);
But to optimize the data transmission & receiving performance, I could not able to find out the above-mentioned parameters.
Can you guide me on, how I can change these parameters in SDK 2015.2 TFTP RAW API Mode application.
My end application needs a Minimum throughput of 100MB/s. But now I am getting 0.83 MB/S which is very very low.
For your reference, I attached my TFTP application source code.