Marcus,
Attached you can find the results of the benchmark test.
I have been also compared the behavior with 2 different CPU and
different USB type 3.0 for the older tower PC, USB 3.1 on the laptop,
very strange the case of the older CPU generating an overflow every minute.
The conditions were exactly the same in all test with no other visible
activity on the machines.
Release 14.0 seems a bit better with the benchmark but,sadly, the 2 UHD
release are not comparable because the 14.0 as soon as generates an
overflow indication drops in the timeout with no recovery but final
consideration is that fast sample rate became unusable for long signal
recording regardless to software release and PC.
I really hope for a solution.
nando
On 8/28/2020 18:52, Marcus D. Leech wrote:
On 08/28/2020 12:23 PM, Nando Pellegrini wrote:
Hi Marcus ,
I am back with more or less same problem, trying to restore the
former situation.
I did not add any device argument simply because i really never
needed to change the default.
I do not pretend to have the problem solved at once on a release
candidate , i was simply reporting them.
In addition but not sure how could help , and now i am talking about
the low level of performance, my testing application is a simple and
short code looping on a receive function (with high priority) but
unable to pull out all the expected data. The CPU load is very low
and it seems like the lower levels of software are not able to engage
the cpu. I normally set the float32 format as output but tried to
avoid the conversion setting 16bit integer. Nothing changes.
Of course i do not know how lower starting from the UHD library end
ending with the OS process scheduling , and , strange, but the same
in two different CPUS where the fastest has the worse behavior.
I made also an attempt starting with the short latency version of
kernel , exactly the same!
That's the status.
nando
If you use the 'benchmark_rate' tool that comes with UHD, what are
your results with both this new release candidate and 3.15?
CPU Intel Core i7-10875H
nando@nando:~/Downloads/uhd-4.0.0.0-rc1/host/build/examples$ ./benchmark_rate
--rx_rate 56000000 --duration 1000
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100; UHD_4.0.0.0-0-unknown
[00:00:00.000507] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B200mini
[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] 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: B200mini
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX1
[00:00:01.626445841] Setting device timestamp to 0...
[INFO] [B200] Asking for clock rate 56.000000 MHz...
[INFO] [B200] Actually got clock rate 56.000000 MHz.
[00:00:01.874374152] Testing receive rate 56.000000 Msps on 1 channels
O[00:04:42.9661629] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[00:04:42.211143190] Receiver error: ERROR_CODE_TIMEOUT, continuing...
Version 3.15LTS
nando@nando:~/Downloads/uhd-UHD-3.15.LTS/host/build/examples$ ./benchmark_rate
--rx_rate 56000000 --duration 1000
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100; UHD_3.15.0.0-0-unknown
[00:00:00.000006] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B200mini
[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] 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: B200mini
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX1
[00:00:00.963410] Setting device timestamp to 0...
[INFO] [B200] Asking for clock rate 56.000000 MHz...
[INFO] [B200] Actually got clock rate 56.000000 MHz.
[00:00:01.202222] Testing receive rate 56.000000 Msps on 1 channels
O[00:11:40.614152] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:15:25.712007] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[00:16:41.252526] Benchmark complete.
Benchmark rate summary:
Num received samples: 55999810609
Num dropped samples: 2
Num overruns detected: 2
Num transmitted samples: 0
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!
CPU Intel I7-4770
UHD 14.0
nando@nando-desktop:~/Downloads/uhd-4.0.0.0-rc1/host/build/examples$
./benchmark_rate --rx_rate 56000000 --duration 1000
Error opening log file: basic_ios::clear: iostream error
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100; UHD_4.0.0.0-0-unknown
[INFO] [B200] Loading firmware image:
/usr/local/share/uhd/images/usrp_b200_fw.hex...
[00:00:00.000580] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B200mini
[INFO] [B200] Loading FPGA image:
/usr/local/share/uhd/images/usrp_b200mini_fpga.bin...
[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] 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: B200mini
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX1
[00:00:11.98049291] Setting device timestamp to 0...
[INFO] [B200] Asking for clock rate 56.000000 MHz...
[INFO] [B200] Actually got clock rate 56.000000 MHz.
[00:00:11.342605768] Testing receive rate 56.000000 Msps on 1 channels
O[00:12:20.903040744] Timestamp after overrun recovery ahead of error
timestamp! Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[00:12:21.103358189] Receiver error: ERROR_CODE_TIMEOUT, continuing...
[00:12:21.203549013] Receiver error: ERROR_CODE_TIMEOUT, continuing...
UHD 3.15 LTS
nando@nando-desktop:~/Downloads/uhd-UHD-3.15.LTS/host/build/examples$
./benchmark_rate --rx_rate 56000000 --duration 1000
Error opening log file: basic_ios::clear: iostream error
[INFO] [UHD] linux; GNU C++ version 9.3.0; Boost_107100; UHD_3.15.0.0-0-unknown
[00:00:00.000004] Creating the usrp device with: ...
[INFO] [B200] Detected Device: B200mini
[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] 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: B200mini
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: FE-RX1
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: FE-TX1
[00:00:01.851473] Setting device timestamp to 0...
[INFO] [B200] Asking for clock rate 56.000000 MHz...
[INFO] [B200] Actually got clock rate 56.000000 MHz.
[00:00:02.092200] Testing receive rate 56.000000 Msps on 1 channels
O[00:00:23.852053] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:01:24.854252] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:02:25.854316] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:03:26.854313] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:04:27.854256] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[O00:05:28.854289] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:06:29.854308] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:07:30.854310] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:08:31.854256] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:09:32.854314] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[O00:10:33.854300] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:11:34.854313] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:12:35.854307] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:13:36.854327] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:14:37.854251] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:15:38.854243] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
O[00:16:39.854318] Timestamp after overrun recovery ahead of error timestamp!
Unable to calculate number of dropped samples.(Delta: -3170 ticks)
[00:16:42.142516] Benchmark complete.
Benchmark rate summary:
Num received samples: 55999780624
Num dropped samples: 17
Num overruns detected: 17
Num transmitted samples: 0
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!
nando@nando:~/Downloads/uhd-UHD-3.15.LTS/host/build/examples$
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com