Hi Peter,
as Martin said, unlikely ("no way") you'll be processing 2 GS/s in computer software, DPDK
or not. Start smaller; channelize / process-on-FPGA as needed.
Best,
Marcus
On 9/26/25 7:56 PM, Peter Gu via USRP-users wrote:
Hi Martin,
I tried to get rid of the underflow issue but didnt succeed. Our setup consists of a
host PC equipped with an AMD Threadripper Pro 3955WX (16 cores), 160 GB of RAM, and a
Mellanox MT27800. It is connected to the X440 via a single 100 GbE cable.
Im using the default X440_X4_1600 image and UHD4.8.0.0
To use DPDK I followed this instruction:
https://kb.ettus.com/Getting_Started_with_DPDK_and_UHD
The only thing I changed was the line
dpdk_driver=/usr/lib/x86_64-linux-gnu/dpdk/pmds-20.0/ ->
dpdk_driver=/usr/lib/x86_64-linux-gnu/dpdk/pmds-22.0/ in uhd.conf
I also played around with dpdk_num_mbufs by setting it to e.g. 8192.
However, I still get underflow issues:
[INFO] [UHD] linux; GNU C++ version 13.1.0; Boost_107400; DPDK_21.11;
UHD_4.8.0.0-0-g308126a4
EAL: Detected CPU lcores: 32
EAL: Detected NUMA nodes: 1
EAL: Detected shared linkage of DPDK
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: No available 1048576 kB hugepages reported
EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:41:00.0 (socket 0)
EAL: Probe PCI driver: mlx5_pci (15b3:1017) device: 0000:41:00.1 (socket 0)
TELEMETRY: No legacy callbacks, legacy socket not created
[00:00:00.000240] Creating the usrp device with:
addr=192.168.60.243,mgmt_addr=10.157.161.243,master_clock_rate=2e9,use_dpdk=1...
[INFO] [MPMD] Initializing 1 device(s) in parallel with args:
mgmt_addr=10.157.161.243,type=x4xx,product=x440,serial=32C7660,name=ni-x4xx-32C7660,fpga=X4_1600,claimed=False,addr=192.168.60.243,master_clock_rate=2e9,use_dpdk=1
[WARNING] [MPM.RPCServer] A timeout event occured!
[INFO] [MPM.PeriphManager] init() called with device args
`fpga=X4_1600,master_clock_rate=(2000000000.0,
2000000000.0),mgmt_addr=10.157.161.243,name=ni-x4xx-32C7660,product=x440,use_dpdk=1,clock_source=internal,time_source=internal,initializing=True'.
Using Device: Single USRP:
Device: X400-Series Device
Mboard 0: x440
RX Channel: 0
RX DSP: n/a
RX Dboard: A
RX Subdev: 0
TX Channel: 0
TX DSP: n/a
TX Dboard: A
TX Subdev: 0
[00:00:03.670625969] Setting device timestamp to 0...
[00:00:03.673117806] Testing receive rate 2000.000000 Msps on 1 channels
Setting TX samples per packet (spp) to 1984
Setting TX samples per burst (spb) to 1984
[00:00:03.675296572] Testing transmit rate 2000.000000 Msps on 1 channels
OUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUterminate
called after throwing an instance of 'uhd::op_timeout'
what(): RfnocError: OpTimeout: Control operation timed out waiting for ACK
Aborted (core dumped)
What can be the issue here?
Best,
Peter
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]