[USRP-users] Benchmarking set_tx_freq and set_rx_freq on X310, B210 and N200

Marcus D. Leech patchvonbraun at gmail.com
Mon Jan 13 13:19:21 EST 2020


On 01/13/2020 05:26 AM, Amrit Pal Singh via USRP-users wrote:
> Hi All,
>
> I am benchmarking the following commands on X310, B210 and N200 on 
> UHD-3.14 version:
>
>  1. usrp->set_tx_freq(tune_req, 0);
>  2. usrp->set_rx_freq(tune_req, 0);
>
> I am changing the frequencies inside a for loop for 1000 and 5000 times.
> The code snippet is as follows:
>     int count = 5000;
>     uhd::usrp::multi_usrp::sptr usrp = uhd::usrp::multi_usrp::make(args);
>     double start = usrp->get_time_now().get_real_secs();
>     for(int a = 0; a < count; a++){
>         uhd::tune_request_t tune_req = uhd::tune_request_t(800e6 + (a *
> 1e6), 0);
>         tune_req.dsp_freq_policy = uhd::tune_request_t::POLICY_NONE;
>         tune_req.rf_freq_policy = uhd::tune_request_t::POLICY_AUTO;
>         //usrp->set_tx_freq(tune_req, 0);
>         usrp->set_rx_freq(tune_req, 0);
>     }
>     std::cout << "time:" << ((usrp->get_time_now().get_real_secs() - 
> start)/count) * 1000 << "(ms)" << std::endl;
>
> The following table summarizes the result observed with average time 
> for a single frequency hops and the hop rate as well for both Tx and Rx.
>
> X310 test 	
> 	
> 	
> 	
> No of hops 	Tx time (average) ms 	Tx Hops/second 	Rx time (average) 
> ms 	Rx Hops/second
> 1000 	0.0453756 	22038.27608 	0.0441415 	22654.41818
> 5000 	0.051013 	19602.84633 	0.0457056 	21879.15704
>
> 	
> 	
> 	
> 	
> B210 test 	
> 	
> 	
> 	
> No of hops 	Tx time (average) ms 	Tx Hops/second 	Rx time (average) 
> ms 	Rx Hops/second
> 1000 	3.34055 	299.3519031 	5.13762 	194.6426555
> 5000 	3.35529 	298.0368314 	4.94233 	202.3337171
>
> 	
> 	
> 	
> 	
> N200 test 	
> 	
> 	
> 	
> No of hops 	Tx time (average) ms 	Tx Hops/second 	Rx time (average) 
> ms 	Rx Hops/second
> 1000 	0.0530515 	18849.6084 	0.0504478 	19822.46996
> 5000 	0.0391015 	25574.46645 	0.037663 	26551.2572
>
>
> As observed, the rate is really slow for B210. I also tested using 
> another B210 and it gave similar results.
> Could anyone share any insights into these values.
>
> Thanks,
> Amrit
>
>
Also, see here:

https://wiki.analog.com/resources/tools-software/linux-drivers/iio-transceiver/ad9361?s#fastlock_mode

The UHD drivers don't implement "fast lock mode", but if you only have 8 
frequencies to manage, you could do some coding
   and make it work.  But the fact is that for many/most F-H scenarios, 
you need more than that.  Which requires a lot of
   tricky stuff, using those 8 "fast lock" slots as a cache, and doing 
cache management.  It may not end up being that much
   faster.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20200113/a2cb47f1/attachment.html>


More information about the USRP-users mailing list