|
From: | mleech |
Subject: | Re: [Discuss-gnuradio] UHD Performance: Reaching 8Msps TX with USB 2.0 (?) |
Date: | Wed, 21 Mar 2012 15:17:12 -0400 |
User-agent: | Roundcube Webmail/0.5.1 |
My sense is that a couple of things are "in play" in these scenarios:
o UHD seems a little better at reporting under/overflow than "classic"
o UHD consumes a slightly-larger amount of CPU in some critical parts of the USB processing than in "classic". Which means that situations that may have been marginal before are now over the edge.
I'm also not sure what makes a "good" USB controller and a "not so good" USB controller.
-Marcus
On Wed, 21 Mar 2012 11:59:14 -0700, Nick Foster wrote:
On Wed, Mar 21, 2012 at 11:42 AM, Vincenzo Pellegrini <address@hidden> wrote:
HI fellows,I was wondering if anybody has been trying to reach 8 Complex Msps over the USB 2.0 on the Tx path.While this has always been OK with old libusrp (and USRP 1) it appears to be no longer possible by means of UHDneither when trying to do that on USRP1 (a few underruns) nor on B100 (lots of overruns).Everything appears instead fine on the Rx pathIs there any workaround to this?..or did I miss something?thanks everybodyPSUSB 3.0 seems to be capable enough for the 8 Msps.Is USB3.0 a requirement for 8 Msps on the B100?Look for other devices on that USB bus using lsusb. Avoid sharing the bus with other peripherals (bluetooth, wlan, etc). You can also modify the transport parameters using --args=recv_frame_size=xxxxx,send_frame_size=xxxxx. This will give you the same control over receive & send frame size that the old USRP1 drivers had. The default receive/send frame sizes are 16K, which seems to work OK on most machines.For comparison, the USB host controller I'm using is the Intel 6 Series/C200, and on B100 I can use a TX send rate of 10.67Msps without underflow, although occasionally underflows occur at the very beginning of the transmission (likely due to interrupt coalescing on the USB controller).I also have a USB 3.0 controller (an NEC Corporation uPD720200) on this laptop, which fares more poorly, but still easily achieves 8Msps. I don't have a good explanation as to why some USB controllers do better than others. USB 3.0 is certainly not required on B100/USRP1, as neither device uses USB 3.0.--n____________________________________________________________B100./benchmark_rate --tx_rate 8e6linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; UHD_003.004.000-325-g7e296167Creating the usrp device with: ...-- USRP-B100 clock control: 10-- r_counter: 2-- a_counter: 0-- b_counter: 20-- prescaler: 8-- vco_divider: 5-- chan_divider: 5-- vco_rate: 1600.000000MHz-- chan_rate: 320.000000MHz-- out_rate: 64.000000MHz--Using Device: Single USRP:Device: B-Series DeviceMboard 0: B100 (B-Hundo)RX Channel: 0RX DSP: 0RX Dboard: ARX Subdev: WBX RX v3 + Simple GDBTX Channel: 0TX DSP: 0TX Dboard: ATX Subdev: WBX TX v3 + Simple GDBTesting transmit rate 8.000000 MspsUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUBenchmark rate summary:Num received samples: 0Num dropped samples: 0Num overflows detected: 0Num transmitted samples: 79931260Num sequence errors: 0Num underflows detected: 406Done!./benchmark_rate --tx_rate 8e6 --tx_otw sc16linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; UHD_003.004.000-325-g7e296167Creating the usrp device with: ...-- USRP-B100 clock control: 10-- r_counter: 2-- a_counter: 0-- b_counter: 20-- prescaler: 8-- vco_divider: 5-- chan_divider: 5-- vco_rate: 1600.000000MHz-- chan_rate: 320.000000MHz-- out_rate: 64.000000MHz--Using Device: Single USRP:Device: B-Series DeviceMboard 0: B100 (B-Hundo)RX Channel: 0RX DSP: 0RX Dboard: ARX Subdev: WBX RX v3 + Simple GDBTX Channel: 0TX DSP: 0TX Dboard: ATX Subdev: WBX TX v3 + Simple GDBTesting transmit rate 8.000000 MspsUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUBenchmark rate summary:Num received samples: 0Num dropped samples: 0Num overflows detected: 0Num transmitted samples: 79890620Num sequence errors: 0Num underflows detected: 696Done!____________________________________________________________USRP 1./benchmark_rate --tx_rate 8e6 --tx_otw sc16linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; UHD_003.004.000-325-g7e296167*** Warning! ***Benchmark results will be inaccurate on USRP1 due to insufficient features.Creating the usrp device with: ...-- Opening a USRP1 device...-- Using FPGA clock rate of 64.000000MHz...Using Device: Single USRP:Device: USRP1 DeviceMboard 0: USRP1 (Classic)RX Channel: 0RX DSP: 0RX Dboard: BRX Subdev: WBX RX v2 + Simple GDBTX Channel: 0TX DSP: 0TX Dboard: BTX Subdev: WBX TX v2 + Simple GDBTesting transmit rate 8.000000 MspsUUUUUBenchmark rate summary:Num received samples: 0Num dropped samples: 0Num overflows detected: 0Num transmitted samples: 80022656Num sequence errors: 0Num underflows detected: 5Done!____________________________________________________________everything fine with 8bit samples./benchmark_rate --tx_rate 8e6 --tx_otw sc8linux; GNU C++ version 4.6.1 20110908 (Red Hat 4.6.1-9); Boost_104600; UHD_003.004.000-325-g7e296167-- Loading firmware image: /usr/share/uhd/images/usrp_b100_fw.ihx... doneCreating the usrp device with: ...-- USRP-B100 clock control: 10-- r_counter: 2-- a_counter: 0-- b_counter: 20-- prescaler: 8-- vco_divider: 5-- chan_divider: 5-- vco_rate: 1600.000000MHz-- chan_rate: 320.000000MHz-- out_rate: 64.000000MHz---- Loading FPGA image: /usr/share/uhd/images/usrp_b100_fpga.bin... doneUsing Device: Single USRP:Device: B-Series DeviceMboard 0: B100 (B-Hundo)RX Channel: 0RX DSP: 0RX Dboard: ARX Subdev: WBX RX v3 + Simple GDBTX Channel: 0TX DSP: 0TX Dboard: ATX Subdev: WBX TX v3 + Simple GDBTesting transmit rate 8.000000 MspsBenchmark rate summary:Num received samples: 0Num dropped samples: 0Num overflows detected: 0Num transmitted samples: 80053688Num sequence errors: 0Num underflows detected: 0Done!
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Prev in Thread] | Current Thread | [Next in Thread] |