discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Underruns causing USRP to stop transmitting and receiving


From: Marcus Müller
Subject: Re: Underruns causing USRP to stop transmitting and receiving
Date: Wed, 21 Oct 2020 11:35:19 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

Hi Jerrid,

what kind of analysis are you doing? I think it would be most helpful if
we could see a full flowgraph, and maybe the critical code.

In general, one or multiple blocks in your processing chain will be
posing a bottleneck. On Linux, `htop` with "Show Thread Names" enabled
is a quick way to diagnose a CPU hog.

Best,
Marcus the younger

On 20.10.20 22:17, Jerrid Plymale wrote:
> Marcus,
>
> Ok, I have moved this discussion to the GNU Radio email list. As far as 
> sampling rate is concerned, we are only running at a 4 MHz sampling rate. I 
> have ran tests with the USRP x310 and the PC we are using for development, 
> and I was able to run a sampling rate of up to the 200 MHz clock rate without 
> issue.
>
> Best Regards,
>
> Jerrid
>
> From: Marcus D. Leech <patchvonbraun@gmail.com>
> Sent: Tuesday, October 20, 2020 1:03 PM
> To: Jerrid Plymale <jerrid.plymale@canyon-us.com>
> Cc: usrp-users@lists.ettus.com
> Subject: Re: [USRP-users] Underruns causing USRP to stop transmitting and 
> receiving
>
> On 10/20/2020 03:53 PM, Jerrid Plymale wrote:
> Marcus,
>
> The problem seems to be related to running the system with the USRP though. 
> Someone who is working on this project with me is able to run the same 
> embedded python block, without  the USRP hardware, and gets no Underruns when 
> doing so. We have also been unsuccessful in finding any useful information 
> regarding potential causes and solutions from GNU Radio and USRP 
> documentation.
>
> Best Regards,
>
> Jerrid
> Well, an underrun is conceptually simple.   It means "you aren't supplying me 
> with samples at the desired rate, so when I went to grab some
>   samples, there weren't any there".  That means your flow isn't supplying 
> them at the desired rate, either due to computational starvation,
>   or a mis-understanding/mis-configuration of things like re-samplers.
>
> Some SDRs out there DO NOT REPORT overruns/underruns, so things can "seem" 
> great and not be.
>
> Further the computational envelope and requires of the UHD driver may be 
> different-enough from other hardware that is operating at
>   similar rates that you end up with underruns.  When you're running at the 
> edge of what can be accomplished with the compute
>   hardware at hand, small differences are what makes the difference.
>
> What sample-rates are we talking about?  Are you configuring your hardware 
> for a sample-rate it can actually support, for example?
>
> Much of this discussion really does belong in the discuss-gnuradio arena, 
> because it comes down to Gnu Radio performance tuning.
>
> Also, you mention an embedded processing block--presumably embedded Python?  
> Such blocks CANNOT be run at high sample
>   rates--even if you use numpy to do all your math, the marhsalling and 
> interpreter costs will kill performance compared to a
>   similar block written in C++.
>
>
>
>
> From: Marcus D Leech <patchvonbraun@gmail.com><mailto:patchvonbraun@gmail.com>
> Sent: Tuesday, October 20, 2020 12:35 PM
> To: Jerrid Plymale 
> <jerrid.plymale@canyon-us.com><mailto:jerrid.plymale@canyon-us.com>
> Cc: usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com>
> Subject: Re: [USRP-users] Underruns causing USRP to stop transmitting and 
> receiving
>
> Probably better served by the discuss-gnuradio list and the chat.gnuradio.org 
> online chat community.
> Sent from my iPhone
>
>
>
> On Oct 20, 2020, at 3:30 PM, Jerrid Plymale via USRP-users 
> <usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com>> wrote:
> 
> Hello All,
>
> So I am working on writing an embedded python block in GNU Radio Companion to 
> preform some analysis of RF signals that is received by a USRP x310 and 
> transmitted back out of the USRP after analysis has been done. I have been 
> running into some underruns lately that I have not been able to find a 
> solution for. If I execute some of my analysis functions in the work function 
> of the block, the application underruns and it causes the USRP to stop 
> transmitting or receiving. However, if I execute the functions in separate 
> polling functions that are being used to display values in the GUI, I do not 
> get underruns. I think this might has to do with how often the analysis 
> function is being executed, as the poll functions are only called at a rate 
> of 10 Hz which is controlled by a function probe. Can anyone give me 
> suggestions on what to try to fix the underrun problem, and any resources you 
> can point me to that might help would be appreciated.
>
> Best Regards,
>
> Jerrid
> _______________________________________________
> USRP-users mailing list
> USRP-users@lists.ettus.com<mailto:USRP-users@lists.ettus.com>
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]