Hi Tiankun, Hi Tom,

I vaguely remember me wondering about that line. It comes from the
single threaded scheduler; back then, wondering, I came to the
conclusion that for the STS that it's probably been considered useful to
half the the "buffer usage ripple" that could occur when blocks started
to always use the full buffer. That sounds helpful in a scheduler where,
per iteration, you either do something or you don't, so a buffer without
any space left to write to might be worse than the overhead that you get
by only being allowed to use buffer/2. Basically, back then, I had
another problem, and just shrugged.

Now, for the thread-per-block scheduler, there's no monolithic iteration
over all blocks, so I guess that problem wouldn't occur. I would have to
try; however, it's hard to find a single proper benchmark for this (if
it doesn't break anything). Tiankun, maybe you have an idea?

Best regards,
Marcus



On 06/19/2015 03:09 PM, Tom Rondeau wrote:
> On Thu, Jun 18, 2015 at 8:29 AM, Tiankun Hu <tiankun...@foxmail.com
> <mailto:tiankun...@foxmail.com>> wrote:
>
>     Hi Tom,
>     Thanks your reply, I have another question, in function
>     "min_available_space" why buffer_size/2 is best ? 
>
>
> I'm not really sure. That's a question for Eric.
>
> What happens when you change it? How does it affect performance?
>
> Tom
>
>
>  
>
>     在 2015年06月16日 21:31, Tom Rondeau 写道:
>>     On Tue, Jun 16, 2015 at 8:57 AM, Tiankun Hu
>>     <tiankun...@foxmail.com <mailto:tiankun...@foxmail.com>> wrote:
>>
>>         Hi,
>>         After go through the block_executor.cc, I found alignment
>>         feature work only when output_multiple not set, why them can
>>         not work at the same time?
>>
>>         -- 
>>         Thanks
>>         Tiankun
>>
>>
>>     Because they are competing objectives. The alignment tries to
>>     keep buffers aligned and therefore the number of items will be
>>     based on a multiple of the alignment requirement. If you need an
>>     output multiple that's different than that, which one should the
>>     scheduler choose?
>>
>>     Note that the buffers always begin on a page and so are
>>     inherently aligned. If your output multiple is also a multiple of
>>     the alignment for the data type, then you'll always be aligned.
>>
>>     Tom
>>
>
>     -- 
>     Thanks
>     Tiankun
>
>
>
>
> _______________________________________________
> 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

Reply via email to