Hi Aaron,
This did indeed help. Now I am able to run ONCE successfully. After that
I get an error. Same behavior on both systems. Not yet sure how to clear
the error. I played with dpdk_link_timeout and even tried resetting the
N310 using "overlay rm n310 && overlay add n310 && systemctl restart
usrp-hwd". But no luck.
Rob
// First run succeeds
root@irisheyes5-hp-z240-sff:~# uhd_image_loader
--args="addr=192.168.1.88,type=n3xx,fpga=XG"
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100;
UHD_4.0.0.0-50-ge520e3ff
[INFO] [MPMD] Initializing 1 device(s) in parallel with args:
mgmt_addr=192.168.1.88,type=n3xx,product=n310,serial=3144673,claimed=False,skip_init=1
[WARNING] [MPM.RPCServer] A timeout event occured!
[INFO] [MPMD] Claimed device without full initialization.
[INFO] [MPMD IMAGE LOADER] Starting update. This may take a while.
[INFO] [MPM.PeriphManager] Updating component `fpga'
[INFO] [MPM.PeriphManager] Updating component `dts'
[INFO] [MPM.RPCServer] Resetting peripheral manager.
[INFO] [MPM.PeriphManager] Device serial number: 3144673
[INFO] [MPM.PeriphManager] Initialized 2 daughterboard(s).
[INFO] [MPM.PeriphManager] init() called with device args
`clock_source=internal,time_source=internal'.
[INFO] [MPMD IMAGE LOADER] Update component function succeeded.
root@irisheyes5-hp-z240-sff:~# benchmark_rate --tx_rate=62.5e6
--rx_rate=62.5e6 --channels="0,1,2,3"
--args="use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2"
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100;
UHD_4.0.0.0-50-ge520e3ff
EAL: Detected 8 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: No free hugepages reported in hugepages-1048576kB
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:03:00.0 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: using IOMMU type 1 (Type 1)
EAL: PCI device 0000:03:00.1 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.2 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.3 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
[00:00:00.000152] Creating the usrp device with:
use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2...
[INFO] [MPMD] Initializing 1 device(s) in parallel with args:
mgmt_addr=192.168.1.88,type=n3xx,product=n310,serial=3144673,claimed=False,use_dpdk=1,addr=192.168.60.2
[INFO] [MPM.PeriphManager] init() called with device args
`mgmt_addr=192.168.1.88,product=n310,use_dpdk=1,clock_source=internal,time_source=internal'.
Using Device: Single USRP:
Device: N300-Series Device
Mboard 0: n310
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: Magnesium
RX Channel: 1
RX DSP: 1
RX Dboard: A
RX Subdev: Magnesium
RX Channel: 2
RX DSP: 2
RX Dboard: B
RX Subdev: Magnesium
RX Channel: 3
RX DSP: 3
RX Dboard: B
RX Subdev: Magnesium
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: Magnesium
TX Channel: 1
TX DSP: 1
TX Dboard: A
TX Subdev: Magnesium
TX Channel: 2
TX DSP: 2
TX Dboard: B
TX Subdev: Magnesium
TX Channel: 3
TX DSP: 3
TX Dboard: B
TX Subdev: Magnesium
[00:00:03.21715319] Setting device timestamp to 0...
[INFO] [MULTI_USRP] 1) catch time transition at pps edge
[INFO] [MULTI_USRP] 2) set times next pps (synchronously)
[WARNING] [0/Radio#0] Attempting to set tick rate to 0. Skipping.
[WARNING] [0/Radio#1] Attempting to set tick rate to 0. Skipping.
[WARNING] [0/Radio#1] Attempting to set tick rate to 0. Skipping.
[WARNING] [0/Radio#0] Attempting to set tick rate to 0. Skipping.
Setting TX spp to 1989
[00:00:04.907401082] Testing receive rate 62.500000 Msps on 4 channels
[00:00:04.914615576] Testing transmit rate 62.500000 Msps on 4 channels
[00:00:15.167869894] Benchmark complete.
Benchmark rate summary:
Num received samples: 2549794336
Num dropped samples: 0
Num overruns detected: 0
Num transmitted samples: 2499910452
Num sequence errors (Tx): 0
Num sequence errors (Rx): 0
Num underruns detected: 0
Num late commands: 0
Num timeouts (Tx): 0
Num timeouts (Rx): 0
Done!
// Second run fails
root@irisheyes5-hp-z240-sff:~# benchmark_rate --tx_rate=62.5e6
--rx_rate=62.5e6 --channels="0,1,2,3"
--args="use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2"
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100;
UHD_4.0.0.0-50-ge520e3ff
EAL: Detected 8 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: No free hugepages reported in hugepages-1048576kB
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:03:00.0 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: using IOMMU type 1 (Type 1)
EAL: PCI device 0000:03:00.1 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.2 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.3 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
[ERROR] [DPDK] All DPDK links did not report as up!
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [UHD] Device discovery error: RuntimeError: DPDK: All DPDK links
did not report as up!
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [X300] X300 Network discovery error RuntimeError: Error with EAL
initialization
[00:00:00.000122] Creating the usrp device with:
use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2...
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [UHD] Device discovery error: RuntimeError: Error with EAL
initialization
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [X300] X300 Network discovery error RuntimeError: Error with EAL
initialization
Error: LookupError: KeyError: No devices found for ----->
Device Address:
use_dpdk: 1
mgmt_addr: 192.168.1.88
addr: 192.168.60.2
// Third run fails
root@irisheyes5-hp-z240-sff:~# benchmark_rate --tx_rate=62.5e6
--rx_rate=62.5e6 --channels="0,1,2,3"
--args="use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2"
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100;
UHD_4.0.0.0-50-ge520e3ff
EAL: Detected 8 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: No free hugepages reported in hugepages-1048576kB
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:03:00.0 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: using IOMMU type 1 (Type 1)
EAL: PCI device 0000:03:00.1 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.2 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
EAL: PCI device 0000:03:00.3 on NUMA socket -1
EAL: Invalid NUMA socket, default to 0
EAL: probe driver: 8086:1584 net_i40e
[ERROR] [DPDK] All DPDK links did not report as up!
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [UHD] Device discovery error: RuntimeError: DPDK: All DPDK links
did not report as up!
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [X300] X300 Network discovery error RuntimeError: Error with EAL
initialization
[00:00:00.000148] Creating the usrp device with:
use_dpdk=1,mgmt_addr=192.168.1.88,addr=192.168.60.2...
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [UHD] Device discovery error: RuntimeError: Error with EAL
initialization
EAL: FATAL: already called initialization.
EAL: already called initialization.
[ERROR] [DPDK] Error with EAL initialization
[ERROR] [X300] X300 Network discovery error RuntimeError: Error with EAL
initialization
Error: LookupError: KeyError: No devices found for ----->
Device Address:
use_dpdk: 1
mgmt_addr: 192.168.1.88
addr: 192.168.60.2
On Tue, Feb 2, 2021 at 11:53 AM Aaron Rossetto via USRP-users <
[email protected]> wrote:
> On Mon, Feb 1, 2021 at 9:02 PM Rob Kossler via USRP-users
> <[email protected]> wrote:
>
> > Has anyone successfully used DPDK with Ubuntu 20.04, UHD 4.0, Intel
> XL710 NIC, and N310 (or X310)?
>
> If I remember correctly, I believe DPDK tries to dlopen() *everything*
> in the directory specified by the dpdk_driver parameter in the DPDK
> section of uhd.conf, leading to a lot of errors similar to yours
> ('Invalid ELF header' and the like). Having the correct collection of
> .so files in that directory is key.
>
> What's worked for me in the past when using DPDK with an Intel XL710
> is creating a directory (I used /usr/local/lib/dpdk-pmds) and copying
> a specific set of DPDK .so files into this directory:
> * librte_mempool_ring.so
> * librte_pdump.so (I think this one is optional--I had been trying to
> get packet dumps from DPDK a while back)
> * librte_pmd_i40e.so
> * librte_pmd_ixgbe.so (may be optional?)
> * librte_pmd_pcap.so (this one is also optional, I think)
> * librte_pmd_ring.so
>
> (Symlinking to the actual libraries wherever they get installed
> instead of copying them into the directory would probably work as
> well.)
>
> Then, make sure that the dpdk-driver key in the [use_dpdk=1] section
> of uhd.conf points to that directory:
> dpdk_driver = /usr/local/lib/dpdk-pmds
>
> Hopefully that will resolve the issue and get you a little further
> down the road.
>
> Best regards,
> Aaron
>
> _______________________________________________
> USRP-users mailing list
> [email protected]
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>
_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com