我会第一次问你问题。如果我的举止有误,我很抱歉。
我在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信息获取过程?环境如下所示。处理器:Xilinx Zynq ARM CoretexA9 2核600 ARM操作系统:嵌入式Linux内核3.14 RealTimePatch帧长度:5.333ms(48 ARM采样,256个数据)
发布于 2017-07-28 01:09:21
GPP抓取与REDHAWK相关的所有进程的/proc,为您提供大量信息(通过利用率属性)以及关于主机状态的更好控制。在资源有限的系统(如您正在使用的系统)上,此过程的开销可能会很大。您可以通过更改GPP的threshold_cycle_time来更改更新的频率。如果添加以下元素:
<componentproperties>
<simpleref refid="threshold_cycle_time" value="2000"/>
</componentproperties>对于DCD中的GPP componentplacement元素,阈值周期时间从500毫秒(默认值)增加到2秒。该数字是一个无符号的长整型数字,因此您可以将此延迟增加到400万秒以上
注意,如果该阈值被设置为使得设备的状态不会基于处理器的状态得到更新,则由于处理器的使用,它将永远不会达到忙碌状态,因此它将允许部署过度订阅的计算硬件的应用
https://stackoverflow.com/questions/45095230
复制相似问题