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.



_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to