On 12/12/2023 07:03, Sachin Gupta wrote:
Dear Forum members,
I am trying to run an OAI 5G UE Simulator using USRP B210. The gNB
configuration that is planned to be used is DL 2x2 MIMO mode and 20
MHz system bandwidth. Due to this I am trying to use benchmark_rate
application to see if my UE setup is working fine
My understanding is that to support 2x2 MIMO with a bandwidth of 20
MHz, I will need 2 TX and 2 RX channels @ sampling rate of 30.72 msps.
When I run a benchmark_rate test with this configuration it is
consistently failing. Single channel and reduced sampling rate tests
with dual channel are passing
Request if someone can help troubleshoot this issue or point me in the
right direction to resolve this issue
*// Dual channel (required for 2x2 MIMO), TX and RX rate test @ 30.72
msps *
benchmark_rate --tx_rate 30.72e6 --rx_rate 30.72e6 --rx_channels "0,1"
--tx_channels "0,1" --duration 100 => Fails with lot of overflows
(logs below)
*// Single channel (for 1x1 SISO), TX and RX rate test @ 30.72 msps *
benchmark_rate --tx_rate 30.72e6 --rx_rate 30.72e6 --rx_channels "0"
--tx_channels "0" --duration 100 => PASS w/o any overflow
*// Dual channel (required for 2x2 MIMO), RX rate test @ 30.72 msps
and TX rate test @ 15.36 msps => reduced TX rate to see if it is working*
benchmark_rate --tx_rate 15.36e6 --rx_rate 30.72e6 --rx_channels "0,1"
--tx_channels "0,1" --duration 100 => PASS
NOTE: As mentioned in Ettus documentation, external power supply is
provided for 2x2 configuration
*===========System Information==============*
# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Address sizes: 39 bits physical, 48 bits virtual
Byte Order: Little Endian
CPU(s): 6
On-line CPU(s) list: 0-5
Vendor ID: GenuineIntel
Model name: Intel(R) Core(TM) i7-10710U CPU @ 1.10GHz
CPU family: 6
Model: 166
Thread(s) per core: 1
Core(s) per socket: 6
Socket(s): 1
Stepping: 0
Frequency boost: enabled
CPU max MHz: 1601.0000
CPU min MHz: 400.0000
BogoMIPS: 3199.92
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr
pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe
syscall nx pd
pe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts
rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq
dtes64 moni
tor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid
sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx
f16c rdr
and lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single
ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid
ept_ad fsgsbase tsc_adjust sgx bmi1 avx2 smep bmi2 erms
invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec
xgetbv1 xsav
es dtherm ida arat pln pts hwp hwp_notify hwp_act_window
hwp_epp md_clear flush_l1d arch_capabilities
Virtualization features:
Virtualization: VT-x
Caches (sum of all):
L1d: 192 KiB (6 instances)
L1i: 192 KiB (6 instances)
L2: 1.5 MiB (6 instances)
L3: 12 MiB (1 instance)
NUMA:
NUMA node(s): 1
NUMA node0 CPU(s): 0-5
Vulnerabilities:
Gather data sampling: Not affected
Itlb multihit: KVM: Mitigation: VMX disabled
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Mmio stale data: Mitigation; Clear CPU buffers; SMT disabled
Retbleed: Mitigation; Enhanced IBRS
Spec rstack overflow: Not affected
Spec store bypass: Mitigation; Speculative Store Bypass disabled
via prctl and seccomp
Spectre v1: Mitigation; usercopy/swapgs barriers and __user
pointer sanitization
Spectre v2: Mitigation; Enhanced IBRS, IBPB conditional, RSB
filling, PBRSB-eIBRS SW sequence
Srbds: Not affected
Tsx async abort: Not affected
*========= Device Information=========*
# uhd_find_devices
[INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107400;
UHD_4.6.0.0-3-g080b1baa
--------------------------------------------------
-- UHD Device 0
--------------------------------------------------
Device Address:
serial: 32308C2
name: MyB210
product: B210
type: b200
# uhd_usrp_probe
[INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107400;
UHD_4.6.0.0-3-g080b1baa
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
_____________________________________________________
/
| Device: B-Series Device
| _____________________________________________________
| /
| | Mboard: B210
| | serial: 32308C2
| | name: MyB210
| | product: 2
| | revision: 4
| | FW Version: 8.0
| | FPGA Version: 16.0
| |
| | Time sources: none, internal, external, gpsdo
| | Clock sources: internal, external, gpsdo
| | Sensors: ref_locked
| | _____________________________________________________
| | /
| | | RX DSP: 0
| | |
| | | Freq range: -8.000 to 8.000 MHz
| | _____________________________________________________
| | /
| | | RX DSP: 1
| | |
| | | Freq range: -8.000 to 8.000 MHz
| | _____________________________________________________
| | /
| | | RX Dboard: A
| | | _____________________________________________________
| | | /
| | | | RX Frontend: A
| | | | Name: FE-RX2
| | | | Antennas: TX/RX, RX2
| | | | Sensors: temp, rssi, lo_locked
| | | | Freq range: 50.000 to 6000.000 MHz
| | | | Gain range PGA: 0.0 to 76.0 step 1.0 dB
| | | | Bandwidth range: 200000.0 to 56000000.0 step 0.0 Hz
| | | | Connection Type: IQ
| | | | Uses LO offset: No
| | | _____________________________________________________
| | | /
| | | | RX Frontend: B
| | | | Name: FE-RX1
| | | | Antennas: TX/RX, RX2
| | | | Sensors: temp, rssi, lo_locked
| | | | Freq range: 50.000 to 6000.000 MHz
| | | | Gain range PGA: 0.0 to 76.0 step 1.0 dB
| | | | Bandwidth range: 200000.0 to 56000000.0 step 0.0 Hz
| | | | Connection Type: IQ
| | | | Uses LO offset: No
| | | _____________________________________________________
| | | /
| | | | RX Codec: A
| | | | Name: B210 RX dual ADC
| | | | Gain Elements: None
| | _____________________________________________________
| | /
| | | TX DSP: 0
| | |
| | | Freq range: -8.000 to 8.000 MHz
| | _____________________________________________________
| | /
| | | TX DSP: 1
| | |
| | | Freq range: -8.000 to 8.000 MHz
| | _____________________________________________________
| | /
| | | TX Dboard: A
| | | _____________________________________________________
| | | /
| | | | TX Frontend: A
| | | | Name: FE-TX2
| | | | Antennas: TX/RX
| | | | Sensors: temp, lo_locked
| | | | Freq range: 50.000 to 6000.000 MHz
| | | | Gain range PGA: 0.0 to 89.8 step 0.2 dB
| | | | Bandwidth range: 200000.0 to 56000000.0 step 0.0 Hz
| | | | Connection Type: IQ
| | | | Uses LO offset: No
| | | _____________________________________________________
| | | /
| | | | TX Frontend: B
| | | | Name: FE-TX1
| | | | Antennas: TX/RX
| | | | Sensors: temp, lo_locked
| | | | Freq range: 50.000 to 6000.000 MHz
| | | | Gain range PGA: 0.0 to 89.8 step 0.2 dB
| | | | Bandwidth range: 200000.0 to 56000000.0 step 0.0 Hz
| | | | Connection Type: IQ
| | | | Uses LO offset: No
| | | _____________________________________________________
| | | /
| | | | TX Codec: A
| | | | Name: B210 TX dual DAC
| | | | Gain Elements: None
*========== Problem scenario Logs (TX and RX rate @ 30.72 msps)
==================*
Followed General Tuning notes @
https://kb.ettus.com/Getting_Started_with_DPDK_and_UHD#Tuning_Notes
(*CPUs 2-5 isolated*)
# taskset -c "2-5" examples/benchmark_rate --tx_rate 30.72e6 --rx_rate
30.72e6 --rx_channels "0,1" --tx_channels "0,1" --duration 1
--priority high
[INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107400;
UHD_4.6.0.0-3-g080b1baa
[00:00:00.000029] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
Using Device: Single USRP:
Device: B-Series Device
Mboard 0: B210
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX2
RX Channel: 1
RX DSP: 1
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX2
TX Channel: 1
TX DSP: 1
TX Dboard: A
TX Subdev: FE-TX1
[00:00:01.866378510] Setting device timestamp to 0...
[INFO] [MULTI_USRP] 1) catch time transition at pps edge
[INFO] [MULTI_USRP] 2) set times next pps (synchronously)
[INFO] [B200] Asking for clock rate 30.720000 MHz...
[INFO] [B200] Actually got clock rate 30.720000 MHz.
[00:00:05.66457702] Testing receive rate 30.720000 Msps on 2 channels
Setting TX spp to 2040
[00:00:05.88338475] Testing transmit rate 30.720000 Msps on 2 channels
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.356178311]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.373353034] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.390809194] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.408309136]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.425513440] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.442918966]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.460473385]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.477327828] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.494827031] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.512352750]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.529942938]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.547127246] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.564702200]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.581790507] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.599503284]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.616332439] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.633433429] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.650535502] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.667989498] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.685455166]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.702877567]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.720326408]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.737630193] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.754504596] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.771535859] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.788576687] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.806317150]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.823610494] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.840615113] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.857670406] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.874838720] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.892369065] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.909245514] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.926880429]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.943781582] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.960899743] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.978572166]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:05.995669275] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.12991071] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.30083109] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.47759726]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.65033966] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.82480858] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.99961987]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.117452418]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.134652518] Detected Rx
sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.152241203]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.169706747]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.186942554] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.204331660]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.221620703] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.238834026] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.256245885] Detected
Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.274190434]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.291702252]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.308942984]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.326528850]
Detected Rx sequence error.
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUO[D00:00:06.343856658] Detected
Rx sequence error.
[00:00:06.344059518] Benchmark complete.
Benchmark rate summary:
Num received samples: 28048518
Num dropped samples: 23595022
Num overruns detected: 58
Num transmitted samples: 58833600
Num sequence errors (Tx): 0
Num sequence errors (Rx): 58
Num underruns detected: 2214
Num late commands: 0
Num timeouts (Tx): 0
Num timeouts (Rx): 0
Done!
*========== Working scenario Logs (TX Rate @ 15.36 msps, RX Rate @
30.72 msps) ============*
*
*
# taskset -c "2-5" examples/benchmark_rate --tx_rate 15.36e6 --rx_rate
30.72e6 --rx_channels "0,1" --tx_channels "0,1" --duration 1
--priority high
[INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107400;
UHD_4.6.0.0-3-g080b1baa
[00:00:00.000108] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[INFO] [B200] Initialize CODEC control...
[INFO] [B200] Initialize Radio control...
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Performing register loopback test...
[INFO] [B200] Register loopback test passed
[INFO] [B200] Setting master clock rate selection to 'automatic'.
[INFO] [B200] Asking for clock rate 16.000000 MHz...
[INFO] [B200] Actually got clock rate 16.000000 MHz.
Using Device: Single USRP:
Device: B-Series Device
Mboard 0: B210
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX2
RX Channel: 1
RX DSP: 1
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX2
TX Channel: 1
TX DSP: 1
TX Dboard: A
TX Subdev: FE-TX1
[00:00:01.866204171] Setting device timestamp to 0...
[INFO] [MULTI_USRP] 1) catch time transition at pps edge
[INFO] [MULTI_USRP] 2) set times next pps (synchronously)
[INFO] [B200] Asking for clock rate 30.720000 MHz...
[INFO] [B200] Actually got clock rate 30.720000 MHz.
[00:00:05.497349995] Testing receive rate 30.720000 Msps on 2 channels
Setting TX spp to 2040
[00:00:05.519203256] Testing transmit rate 15.360000 Msps on 2 channels
[00:00:06.771457104] Benchmark complete.
Benchmark rate summary:
Num received samples: 75074598
Num dropped samples: 0
Num overruns detected: 0
Num transmitted samples: 30787680
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!
=================
Best Regards,
Sachin
You'll likely want to look at adding "num_recv_frames=256" and
"num_send_frames=256" to your device arguments at
higher rates.
See:
https://files.ettus.com/manual/page_transport.html
_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com