在gnuradio的一个块内添加处理延迟

时间:2019-06-02 12:21:15

标签: gnuradio

我正在与gnuradio合作。当我在终端上打印一些大数据时,我遇到了一个奇怪的性能改进,而性能却下降了,而没有在终端上给出打印声明。

我推断出,在打印到终端时,我给gnuradio块额外的处理时间,以进行处理。这只是我的预感,可能不是确切原因。如果不正确,请正确。

因此,有一种方法可以在gnuradio的一个块内增加一定数量的处理延迟(就像我在将数据打印到终端期间所得到的那样)。

预先感谢

1 个答案:

答案 0 :(得分:0)

首先,很明显:不要在终端上打印大量数据。终端并非用于此目的,而您的CPU会尝试呈现所有文本,因此很快就会成为限制因素。

  

我推断出,在打印到终端时,我给gnuradio块额外的处理时间,以进行处理。这只是我的预感,可能不是确切原因。如果不正确,请正确。

打印到终端是IO要做的事情。这意味着处理数据的程序(通常,Linux内核可能正在处理PTY数据,或者它可能直接移交给终端仿真器的进程)将限制它如何从程序打印中接受数据。

您的GNU Radio块的work函数被简单地阻止了,因为您尝试使用的资源是有限的。

  

因此,我可以在gnuradio的一个块内添加一定数量的处理延迟吗(就像我在将数据打印到终端期间所得到的那样)。

是的,但这在这里没有任何帮助。

您受IO约束。做一些不打印到终端上的事情–很有意义,因为无论如何您都无法快速阅读。