加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

EdgeBoard中“活灵活现”的算子

发布时间:2019-12-27 04:47:28 所属栏目:业界 来源:站长网
导读:副标题#e# 背景介绍 数据、算法和算力是人工智能技术的三大要素。其中,算力体现着人工智能(AI)技术具体实现的能力,实现载体主要有CPU、GPU、FPGA和ASIC四类器件。CPU基于冯诺依曼架构,虽然灵活,却延迟很大,在推理和训练过程中主要完成其擅长的控制和调

指数激活运算单元EXP-ACT实现的基础是sigmoid,由于在FPGA中进行指数型运算比较耗资源,如何复用该计算单元就变得非常有意义。通过分析发现,可以把 tanh 和两通道softmax 转换成 sigmoid 的形式,这样一个指数运算单元就支持了3种算子,实现资源利用的最大化。

  多算子融合

在推理时做BatchNorm运算非常耗时,通过SDK将BatchNorm+Scale的线性变换参数融合到卷积层,替换原来的weights和bias,这样4个算子可以融合成单个算子conv + batchnorm + scale + relu,对于dw-conv同样如此。相对于每计算完一个算子就将数据送回内存,这种算子融合大大减少了内存的读写操作,有效提高了处理帧率。

此外,我们将scale、bias和relu为代表的激活函数层放到各算子之后的链路上,然后统一送到DMA传输模块,如图11所示。这不仅使得各算子复用了这些逻辑,节省了大量片内资源,也使得各算子都可以具备这些功能,且都能以最大带宽进行DMA传输。在实践中,我们将这些功能做成可选项,由软件根据当前网络算子的需要进行选择,在节省资源的同时,既保证了通用性,又兼顾了灵活性。

EdgeBoard中“活灵活现”的算子  

图11. EdgeBoard内部结构和链路图

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读