discuss-gnuradio
[Top][All Lists]
Advanced

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

[Discuss-gnuradio] Re: uhd_usrp_sink often blocks in non-continuous data


From: Feng Andrew Ge
Subject: [Discuss-gnuradio] Re: uhd_usrp_sink often blocks in non-continuous data sending
Date: Mon, 07 Mar 2011 09:39:21 -0500
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Thunderbird/3.1.8

Josh,

The code works well now, thanks a lot for your help in the past week.

The delay was caused by a system setting in my computer and not related to UHD code.

Andrew


On 03/04/2011 12:19 AM, Josh Blum wrote:


As such, do you know an approach to solve this blocking problem?  I have
tried to set the timeout as a small value, e.g. 1ms, but it seems not
able to completely solve the problem.  I have never seen such behavior
using the raw Ethernet code.  What's the difference?

Andrew,

The uhd_usrp_sink::work() should always block until the entire buffer
has been transmitted. There is no choice in the matter. However many
samples gnuradio buffered before calling work(), we must send all of
those samples.

Now, there is a question of where is the delay, what is taking too long,
what is buffering too much, etc. I am attaching a diff with prints for
the time before and after the send() call in the work function. This
will tell us how often work is called, how many samples are transmitted,
and how long this operation takes. Please try the attached diff and post
the output.

Thanks,
-Josh




reply via email to

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