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]

Reply via email to