深度学习实践与部署

涉及切入式开发的内容可以先了解这篇文章内容:嵌入式开发,从开发板到产品的过程是什么样的?_mjiansun的专栏-CSDN博客

1、远程服务器模式

    这种模式多见于大的互联网公司,比如bat。用户需要做的就是上传自己的数据就可以了。当然,这种api初期的若干次可能是免费的,但是后期其实价格并不便宜。

2、本地pc模式

    大家都知道,训练模型是非常耗时间的,运行模型也是很耗时间的。对于工厂来说,如果训练的模型,跑的速度很慢,那么实际意义不大。所以,很多产线上面,会采取工业相机+pc服务器的形式。pc上可以运行windows server系统,选用好一点的显卡,一般情况下问题不大,唯一需要考虑的就是成本和稳定性问题。

3、arm+dsp模式

    现在ti的这种芯片,主要用在汽车上面,常见的j6、j7都是可以的,所以使用arm、dsp并发的形式其实也是可以的,这个里面最好使用ti提供的cnn库,这样比较好一点。

4、arm+gpu+cuda模式

    nvidia推出来的jetson系列,目前已经在各大平台都可以买到。抛开gpu来说,jetson系列的arm cpu也是性能很强悍的。这个里面成本是很重要的一个环节,另外产品本身还没有经历过重要的工业实践,这个也需要注意。

5、arm+fpga模式

    只要涉及到fpga,一般都是定制的领域。fpga的好处就是成本可接受、性能好,数据处理可以完美地利用内存传输的时间,此外还有数据并发处理技术、流水线处理技术、缓存技术,有了这些技术的加持,即使fpga频率不算太高,性能其实也是非常可观的。但是,目前市场上面合适的fpga算法工程师很少,即使hls这种c转verilog技术,掌握的人也不多,当然成本也很重要,种种因素制约了fpga芯片在深度学习领域的发展和部署。

6、arm+npu模式

    目前市场上面能够买到的带npu的soc不多,rk3399pro算一个。npu,虽然名字高大上,本身来说,还是相当于将cnn硬件化,将卷积计算、全连接、激励函数这些内容用硬件来实现,当然这里面还有一部分图像与处理的工作,也就是isp的内容。每个厂家都是宣称自己的npu可以实现多少个tops,其实还是在往里面堆8位int的alu,意义多大,很难说。

7、arm+普通gpu+opencl模式

    除了nvidia的gpu,大部分芯片厂家的soc还支持opencl的标准,这里面主要是arm自己的gpu,好不好用难说。比如很多人买rk3399 pro的板子,上面就支持opencl,有的人说好用,有的人说不好用。大家可以找一款带arm gpu的板子尝试一下,假设芯片手册上面明确表示支持opencl,那么可以尝试一下,影响效果的因素很多,比如模型、内存、gpu的使用,目前来说这种方法使用的比较少,但是也值得一试。虽然nvidia的gpu已经成为事实上的标准,但是如果能用opencl对已有的算法进行加速,未尝不是一个好的选择。

8、纯arm运行模式

    现在带arm a72、a73的soc也开始多了起来,比如树莓派4b。但是我个人还是不太建议用arm运行深度学习,嵌入式的算力再强,也不会达到pc的算力,所以这个里面还是要尽量使用soc上面所有ip的算力核,这样才能达到比较好的使用效果和体验。当然,如果仅仅是学习,比如将yolo4、yolo5 port到板子上,那其实无可厚非,但做成产品就是另外一回事了。

    总结,以上这几种模式,基本上是目前能够想到的所有深度学习部署方法,大家可以根据自己的需求灵活处理。总的来说,根据自己的能力、成本和厂家的support程度选择一个适合自己的场景。

ps:

    检查发现,这篇文章和之前的这一篇(https://feixiaoxing.blog.csdn.net/article/details/104965594)有部分重合,比如之前这篇文章谈到了加速棒,而这篇文章谈到了opencl,算是一部分补充吧。因此建议大家可以根据自己的情况,选择一个加速的方向即可,比如cuda就非常不错。因为他不光可以用在图像上,还可以使用在很多其他算法的加速上面。

    当然如果精通了一种方法,比如fpga,那么你就知道,数据加速不完全是在并发数据执行上面(比如矩阵计算),还体现在数据边收边处理、流水线、dma、cache&uncache、系统设计多个方面,这个时候你对数据的并行运算就会有更进一步的认识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值