A tag is a piece of metadata that points to a specific sample in a stream. Tagged streams operate on chunks of samples, using a certain tag to determine the chunk length. Streams are simpler to deal with, unless you need data chunked.
What kind of performance issues are you finding?
If you are implementing a block, and do not want tags passed through, `set_tag_propagation_policy(TPP_DONT)`.
On Mon, Nov 23, 2020 at 3:55 PM Nicholas Long <nicholaslong94@gmail.com> wrote:
Hi, So I am not sure exactly how to ask this, but I have a few questions about tag best practices when creating OOT modules, apologies if this is answered elsewhere...What is the main source of performance issues with tag propagation: Is it primarily copying overhead? Are there contention issues? or is most of the overhead in the actual reading/setting of tags? I guess part of my question is how are tags passed between blocks, I understand the ring buffers, but tags are still somewhat a mystery to me.Are tagged stream blocks better than just a stream with tags? From my limited ability to parse tagged stream blocks seem to limit the number of calls to get_tags_in_range, but they still pass on all other tags on the input buffer to the output buffer regardless.Thanks,Nick
No comments:
Post a Comment