工业相机传输照片丢数据
最近使用工业相机抓拍,用arm64的sdk抓图总是存在丢帧问题,最终发现是cpu性能导致。下面将一些点分享出来。
问题
照片大小基本是7M到10M之间。共出现两种异常照片。第一种经常出现在刚开始抓拍的时候,第二种在后面随机。
1、照片中有横向绿色条纹。
2、照片中某些地方存在水波纹。
调试
在多种平台进行过调试。
1、rk3399(2个A72+4个A53);2、tx2(2个denver2+4个A57);3、i7 8th电脑的ubuntu虚拟机;4、Xeon(R) CPU E3-1225的ubuntu(4个核)。
通过扩大socket缓冲区大小,1和3的平台抓拍可以正常。(/etc/sysctl.conf结尾添加或修改net.core.rmem_max = 10485760和net.core.wmem_max = 10485760,然后重启;或者直接echo 10485760 > /proc/sys/net/core/rmem_max)。4这种平台的cpu异常强大没有问题。
tx2上哪怕扩大缓存到40M,也依然存在上面两种问题。扩大mtu到9000也无法解决。
结论
tx2的特点在它的gpu,如果不用gpu仅看普通应用程序这块,很一般!denver2根本没有A72强!
还没有评论,来说两句吧...