IPC视频采集和AI问题
<p>目前看到市场上很多IPC摄像头还带人脸识别等AI功能,在PC电脑用python跑人脸识别算法CPU负载都60~80%(imshow的情况下),跑在A40I 1.2G主频的ARM板子负载也是40~50%(仅仅是采集视频在人脸检测保存成avi格式视频)。我现在是打算是接4路IPC,如果都做算法,那基本都跑满负荷了,不知道大伙有什么好的建议来减少负荷?</p><p>使用容器,虚拟化将各算法模块放到容器当中,虽然容器好象增加了CPU的调度,但是每一个容器都是相互隔离的,所以每个容器就相当于是一个独立的“计算机”。</p>
<p>当然这种是简单的解决方案,更好的方案是对程序进行算法优化,python这种东西是给业余爱好者用的,在等个十几年,算力大大提高以后,python才会更好的适应专业应用。python的发展很可能就像当年的BASIC,虽然现在有VBA等有些应用,但已然已是小众了。</p>
<p>除了容器还有一个linux管理命令“taskset”,进行CPU绑定。“有些情况下可以增加计算任务的算力”。注意是有些情况下。CPU还得是多核的。</p>
<p> </p>
bigbat 发表于 2020-1-4 12:08
除了容器还有一个linux管理命令“taskset”,进行CPU绑定。“有些情况下可以增加计算任务的 ...
<p>你做过NVR方面的项目吗?对于容器方面,我使用过docker技术开发各种app,但是实际上也是很占宿主机CPU资源</p>
wateras1 发表于 2020-1-4 17:01
你做过NVR方面的项目吗?对于容器方面,我使用过docker技术开发各种app,但是实际上也是很占宿主机CPU资 ...
<p>你做docker就应该了解为什么使用docker。容器就是要把CPU的算力充分发挥出来,一个操作系统或者说一个物理计算机是不能充分发挥出CPU的效能的,CPU大部分时间都是在做于计算任务无关的事情,容器把CPU分解为多个虚拟的系统,相当于相当于增加了CPU用于计算的时间。</p>
<p>早期做过ffmpeg的项目和freeswitch的项目。NVR了解一些。基于netty的高效能数据推送也做过。</p>
页:
[1]