Stream 需要了解数据流处理权衡的帮助吗
我想为数字信号处理实现一个基于数据流的系统,很像,处理以块的形式进行,这些块串在一起处理数据流。据我所知,有三种方法可以传递数据流:一个块可以将数据“推”到下一个块,一个块可以从上一个块中“拉”数据,或者块可以处理数据缓冲区并返回数据缓冲区,由调度器处理缓冲区(最后一种方法是GNU Radio的操作方式) 每种方法都有权衡。例如,“拉取”体系结构要求,对于获取一个输入流并返回两个输出流的块,使用任意大的缓冲区缓冲输出流(在拉取第一个输出之前,可以为Stream 需要了解数据流处理权衡的帮助吗,stream,iterator,dataflow,gnuradio,Stream,Iterator,Dataflow,Gnuradio,我想为数字信号处理实现一个基于数据流的系统,很像,处理以块的形式进行,这些块串在一起处理数据流。据我所知,有三种方法可以传递数据流:一个块可以将数据“推”到下一个块,一个块可以从上一个块中“拉”数据,或者块可以处理数据缓冲区并返回数据缓冲区,由调度器处理缓冲区(最后一种方法是GNU Radio的操作方式) 每种方法都有权衡。例如,“拉取”体系结构要求,对于获取一个输入流并返回两个输出流的块,使用任意大的缓冲区缓冲输出流(在拉取第一个输出之前,可以为n样本“拉取”第二个输出)。类似地,“推送”方法
n
样本“拉取”第二个输出)。类似地,“推送”方法也存在同样的问题,即采用2个输入流并返回1个输出流的块。但我认为这两种方法都使块实现更容易,因为每个块都可以将其输入和输出视为一个流
在我进一步研究这个项目之前,我想知道:有没有研究过这样实现流程图的不同方法之间的权衡?我真的很想写一篇我可以阅读的文章,以便在实施过程中遇到问题之前理解这些问题。这是一个非常广泛的问题。你肯定可以读很多书,对手头的事情形成一个真正的消息灵通的意见 然而,在通用操作系统的世界中并不存在拉动。你可以有两样东西