Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table 37: data throughput as a function of XferSize given PacketSize = 102,400 bytes.
To change XferSize in C++, the method
BulkEndPoint->SetXferSize(DesiredValue);
shall be used. Cypress sets DesiredValue to 4,096 bytes by default. This default value is not documented in the CyAPI.lib manual (pag 62 of CyAPI.pdf), but it has been retrieved by using the following C++ instructions:
int XferSizeReadValue = BulkEndPoint->GetXferSize();
cout<< "XferSizeReadValue" << XferSizeReadValue <<endl;

 

 Chart 1: data throughput [Mbyte/s] as a function of XferSize [byte] given PacketSize = 102,400 bytes.

Chart 2: data throughput [Mbyte/s] as a function of PacketSize [byte] given XferSize = 102,400 bytes

Given an XferSize (driver buffer size) of 131,072 bytes, the influence of PacketSize on the throughput is reported in the following table.

...

Table 38: data throughput as a function of PacketSize given XferSize = 102,400 bytes.
To transfer the array of data with dimension PacketSize in C++, the method XferData() shall be used.

If a higher throughput is desired,

  1. the value of XferSize shall be greater than the default one
  2. the data to be transferred shall be organized in large data array(s)

Recommended values are :

  • XferSize = 131,072 bytes and PacketSize = 131,072 bytes

for a throughput of ≈ 37 Mbyte/s.

  • XferSize = 65,536 bytes and PacketSize = 65,536 bytes

for a throughput of ≈ 35 Mbyte/s.