Hi, I would like to minimize the absolute latency of the X310 using the PCIe interface.
Currently I have a script consisting of two threads, one receives data from RX (and places that data into a buffer) and the second thread transmits that data from the buffer. (Everything is in c++ using UHD and Boost libraries, no GNU radio) I am decreasing the delta between the receiver start time and transmitter start time, and trying to make this difference as small as possible without late packets or underflows during run time. The current goal is receiver_start_time-transmitter_start_time<=10us. Currently, using the PCIe interface, I have only been able to achieve a delta of 110us without any underflows or late packets. In order to get to the latency I am currently at (110us) I have: *Set CPU core affinities for both of the threads *Run chrt --rr 1 with my script to give real time priority *Turned off CPU power saving states *Ran this script with both UHD 3.9 and 3.11 (3.11 yields better results) For some reason I am able to run my script with a tx/rx sampling rate of 100Msps with UHD 3.11, but if I run the same setup with UHD 3.9 at 100Msps, I get severe underflow. Also, regardless of the delta, I am unable to run my sampling rate at 200Msps without severe underflow using either UHD 3.9 or 3.11. I am wondering what additional advice you can give me for further reducing this latency. Let me know if I can provide additional clarifications. Thanks, Donna
_______________________________________________ USRP-users mailing list [email protected] http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
