减少 GPP 监控过程

Reduction of GPP monitoring process

第一次提问。如果我的举止有问题,我很抱歉。

我在 Xilinx Zynq 上的嵌入式 Linux 上使用了 RedHawkSDR v1.10.1。 AM解调处理是用连接三个分量的波形实现的。 连接以太网并监测波形时,由于接收到的声音中出现异常噪音, 我们升级到 RedHawkSDR v2.1.0。 GPP 从 python 更改为 C++,我认为我可以期待更好的性能。 然而,当RedHawkSDR v2.1.0被采用后,就变得更加奇怪了。 究其原因,GPP每隔threshold_cycle_time密集运行, 解调处理未完成。 好像是在GPP获取CPU/NIC等信息,判断阈值的时候发出异响。 有什么办法可以减少或消除GPP信息获取过程? 环境如下。 CPU:Xilinx Zynq ARM CoretexA9 2核600MHz OS:嵌入式Linux Kernel 3.14 RealTimePatch 帧长:5.333ms(48kHz采样,256个数据)

GPP 抓取与 REDHAWK 相关的所有进程的 /proc,为您提供大量信息(通过使用 属性)以及更好地控制主机状态。在资源有限的系统(比如您正在使用的系统)上,此过程可能代价高昂。您可以通过更改 GPP threshold_cycle_time 来更改更新的频率。 如果添加元素:

<componentproperties>
<simpleref refid="threshold_cycle_time" value="2000"/>
</componentproperties>

到DCD中的GPP componentplacement元素,阈值循环时间从500毫秒(默认)增加到2秒。该数字是一个无符号长整数,因此您可以将此延迟增加到超过 400 万秒

请注意,如果设置此阈值使得设备状态不会根据处理器状态进行更新,则它永远不会因为处理器使用而达到忙碌状态,因此它将允许部署应用程序超额订阅计算硬件