Zhe, Can you explain again why you require a min size for noutput_items? It sounds like there might still be a misunderstanding as to what this variable is used for. Why does your block care about the value of noutput_items?
v/r, Rich On Wed, Apr 1, 2015 at 8:34 AM, Zhe Feng <feng...@umich.edu> wrote: > Dear Marcus, > > Thanks for your comment! > I made a typo my previous post that I was going to say > "set_min_noutput_items" but I wrote "set_noutput_items". I actually used it > in the work function, but it didn't seem to function as I expected. After > reading your comment, I put it in the constructor and nothing changed. > > Best regards, > Zhe > > On Wed, Apr 1, 2015 at 11:18 AM, Marcus Müller <marcus.muel...@ettus.com> > wrote: > >> Hi, >> noutput_items is what GNU Radio can maximally allow your block to >> produce, which is the free size in the output buffer, which is the input >> buffer of the next block. >> So if your block is faster than the downstream block, you will see >> exactly the behaviour you are observing. This is normal, and good. >> >> There's nothing the scheduler can do about this -- something >> "downstream" of your block just "backs up" the item flow, and your block >> will have to wait until whatever is downstream of it is done consuming >> input, so that there is space for output from your block again. >> >> You could try using set_min_noutput_items [1] in your block's >> constructor, so that GNU Radio won't even ask you to work() if there's >> not enough space available. >> >> Greetings, >> Marcus >> >> >> [1] >> >> http://gnuradio.org/doc/doxygen/classgr_1_1block.html#a65cfc579150dc4d10c6180d3365aa9a8 >> >> On 04/01/2015 04:47 PM, Zhe Feng wrote: >> > Dear all, >> > >> > I'm experiencing a problem with the noutput_items. >> > >> > I have written a sync block which did "return" several times. I found >> the >> > noutput_items dropped exactly by the amount that I returned. For >> example, if >> > I wrote "return 10", after that, I printed noutput_items and found it >> > decreased to noutput_items -10. >> > >> > Due to this fashion, the noutput_items could decrease to a value that >> one of >> > my "if statement" isn't satisfied. In that case, several items wouldn't >> be >> > outputed so the actual size of output items is smaller than the size of >> > input items. Is it still a sync block? >> > >> > I tried to wait for the noutput_items to increase but it didn't happen. >> I >> > tried to use "set_noutput_items( )" or "set_output_buffer()" to some >> values >> > I wanted, but they also failed. >> > >> > So I'm asking that how to tell the scheduler effectively that I want to >> > increase the noutput_items? >> > >> > Thanks! >> > Best regards, >> > Zhe >> > >> > >> > >> > -- >> > View this message in context: >> http://gnuradio.4.n7.nabble.com/How-to-increase-the-noutput-items-tp53075.html >> > Sent from the GnuRadio mailing list archive at Nabble.com. >> > >> > _______________________________________________ >> > Discuss-gnuradio mailing list >> > Discuss-gnuradio@gnu.org >> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >> >> >> _______________________________________________ >> Discuss-gnuradio mailing list >> Discuss-gnuradio@gnu.org >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >> > > > > -- > Zhe Feng > Electrical Engineering: System > University of Michigan Ann Arbor > Tel: 734-834-3188 > > > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio