Additional Information
In the USRP RIO devices, data is first buffered in the onboard BRAM in the Ethernet Transport block on the device capable of collecting at least a packet worth of data plus some buffering for 'hiccups' in the network or on the host PC, although this buffer is very limited in size. However, this is not where the fetch in LabVIEW occurs. The fetch operation that occurs in LabVIEW is it pulling the data from the host PC's buffer as it gets filled up from the USRP RIO. The size of the host PC's buffer and the rate at which it can stream data is dependent on the physical limitations of the PC.
Ways to maximize the performance of the host PC when streaming data is listed in the
Data Streaming Performance Tips article. This includes configuring the MTU size depending on the interface used (for Ethernet-based streaming), increase the number of samples requested for each fetch, use separate threads for streaming and setting the
FastSendDatagramThreshold registry key.
Selecting the I16 data type can also increase the speed at which data is streamed as the CDB data type adds additional overhead being that it takes up more memory and space.
Changing the Host system for one with higher data streaming and processing capacity can also improve performance, whether if it's a PC or a PXI Chassis and PXI controller setup.