头条  >   频道  >  正文

如何用FPGA加速卷积神经网络(CNN)?

亲,暂时无法评论!

雷锋网 AI科技评论按,本文来源于在知乎问题【】下的回答,雷锋网(公众号:雷锋网) AI科技评论获其授权转发。

以下主要引用自西安邮电大学李涛老师关于连接智能和符号智能的报告,以及fpl2016上ASU的 Yufei Ma的文章和slide

Scalable and Modularized RTL Compilation of Convolutional Neural Network onto FPGA

地址:

推荐去读下原文

我做过一些计算加速的工作,个人感觉要入手先要想好几个问题: 要加速的是什么应用,应用的瓶颈是什么,再针对这个瓶颈,参考前人工作选择合适的方案。

过早地执着于fpga的技术细节(用hdl还是hls,用啥芯片,用啥接口)容易只见树木不见森林。现在software define network/flash/xxx,已然大势所趋。之前开组会时跟同志们聊过,算法是纲,纲举目张;软件是妈,软件是爹,软件比基金委都亲。所以推荐先把cnn的算法看一下,拿一些开源代码跑一下经典的例子(lenet, alexnet, etc)看好输入输出,摸清算法。

如何用FPGA加速卷积神经网络(CNN)?

比如以下是一个lenet的cpp和opencl的实现

地址:https://github.com/nachiket/papaa-opencl

以下图片源自Yufei Ma的Slide

如何用FPGA加速卷积神经网络(CNN)?

可以看到cnn算法主要由conv ,pooling,norm等几个部分组成。工作时将image跟weight灌进去,最终得到预测结果。

接下来拿profiler(比如perf)去分析下软件算法,找找热点和性能瓶颈。在cnn里面主要耗时的就是conv二维卷积了。性能瓶颈也主要在于卷积时需要大量乘加运算,参与计算的大量weight参数会带来的很多访存请求。

接下来考察下前人的工作和当前的灌水热点。按理说这种大量的乘加运算用dsp应该不错,但是在cnn中大家并不需要这么大的位宽,有时候8位就够了。dsp动辄32/64位的乘加器实在是浪费。于是乎大家就开始减位宽,多堆几个运算单元。面对大量的访存请求,大家就开始设计各种tricky的缓存了。

以下是大家的一些灌水方向

如何用FPGA加速卷积神经网络(CNN)?

如何用FPGA加速卷积神经网络(CNN)?

于是就有了以下各路硬件设计

如何用FPGA加速卷积神经网络(CNN)?

如何用FPGA加速卷积神经网络(CNN)?

有人照着dsp风格去设计加速器

如何用FPGA加速卷积神经网络(CNN)?

ceva也出了一系列面向CNN的IP

如何用FPGA加速卷积神经网络(CNN)?

如何用FPGA加速卷积神经网络(CNN)?

有人用了脉动阵列或者Dataflow的风格

如何用FPGA加速卷积神经网络(CNN)?

有人设计了专用的芯片比如计算所的Cambricon

如何用FPGA加速卷积神经网络(CNN)?

还有的就是你提到的fpga

所有的事情到了硬件层面实际上能用的手段也就有限了。不外乎堆资源和切流水两招。再不然就是做一些bit level的小技巧,比如乘法器变查表之类的,这些技巧在很多二十年前的dsp教材里面都描述得很细致了,拿来用就好。比如这本书亲测有效。

VLSI Digital Signal Processing System--Design and Implementation by Keshab

典型的fpga实现可以参考Yufei Ma的文章,不论是conv,还是pooling,依葫芦画瓢设计data path,切好流水,再想好状态机加上控制信号。这些就看大家撸rtl的基本功了。

比如Conv模块如下图,主要拿一堆乘法器以及加法器树搭好data path,切好流水,接着加上控制信号。

如何用FPGA加速卷积神经网络(CNN)?

Pooling也是大同小异

如何用FPGA加速卷积神经网络(CNN)?

还有Norm

如何用FPGA加速卷积神经网络(CNN)?

最后把这些模块通过router连接,外面再套一层控制模块,封成ip就好了。

如何用FPGA加速卷积神经网络(CNN)?

剩下的就是集成进你的系统(microblaze, nios还是arm,配好dma,写好灌数据的驱动,这些就是各有各的道儿了)。推荐动手码rtl前先写好文档,约定好端口,寄存器和软件api,否则边写边改容易乱。

整体来说,cnn这种应用流水线控制相对cpu简单,没有写cpu的那一堆hazard让人烦心,也不用写汇编器啥的。太大的cnn放在fpga里挺费劲,做出创新很难,但是fpga上写个能用的lenet这种级别的cnn还是挺容易的。最后还可以依照惯例跟cpu比性能,跟gpu比功耗。

雷锋网版权文章,未经授权禁止转载。详情见。

迷奸mm成人小说叶玉卿村上丽奈父恶戏好看的比较虐的小说怨之恋25山水情美术片亦不曾离开鬼童贞女狩猎花宗秘史林修崖和黛儿现代文阅读网红我的妈妈李彤彤紫轩小说出自楚辞的成语仙道春奈作品封面番号倾本佳人好看站悟饭学者的图片步步生莲月关女主角张欣的小说鸽血红玉米菠萝小说韩娱小说女主是徐贤快穿之当言情变成耽美假扮公子采桃花txt下载亿万豪宠帝少的迷糊妻书包网金雪炫小说,后宫三千人家族掌权,韦千里算命的故事类似成人版童话大冒险颜柳欧赵谁的书法最好闪婚总裁契约妻番外类似大隋王朝的小说豪门错爱娇妻太甜txt下载伊拉克风云txt下载强奸孕妇txt废柴七小姐和帝修高良井栞合集深圳吴晓波书友会四岁五岁孩子故事书杖刑屈辱受刑宫廷潇湘周定天下38初撮之人妻降临家有娇徒小说阅读看80后日批小说霸行三国不低头小说草幼逼小说太监也撩人之摄政王妃鲍国安水浒传电视剧抗日系统类小说小青天司徒公超恐怖小天使海蒂好句大全文言传名句变态虐肛灌肠小说,初写香月杏珠第一会所苍井空无码凤逆天下废柴小姐太嚣张阿飞迪达拉小说花火投稿须知2017杏吧性吧长篇连载一世倾城冷宫弃妃简介1998年虐童事件,三季人典故少年雷锋故事杀手问情txt我的恩典够你用的恨已成殇父子重生之温熹贵妃创世兵魂温柔的背后小说淮南忆江南小姐戴维索利斯故事诚在文言文中的意思我爱幼幼小说自古红蓝出cp下一句sm重口味虐文耽美小说明天之后by顾上番外推窗望月有那些小说朝田美惠香最后の引退改文gl超级女神糸统时诗的家庭背景资料类似官爱的小说欧美成人做爱小说丝袜空小说风溪篇淡定皇子妃新写实小说蓝色的章l白领偷情小说相公个个很绝色强奸偷窥伦理小说紫彩玉萧下载诸赞偈,皇后颜未衰爱已驰萌系大陆三篇番外杨贵妃秘史全集快播,潮汕泥沟名人无暇人生吧重生邪王的千面宠妃瓶邪黑花反苏文三打白骨精概括300字正是江南好风景作者乱欲文越女词(其三)李白答案迷糊小宠妃乡村乱情无删全集美妻郝可人免费子曰左左右物资重生男变女H文,古代尊师的故事千机变独家魔法殿下绝宠娃娃淫妻小说长篇连载系列浪漫传说隐弗腐文玉堂金闺txt下载乌龙闯情关洪佳丽神雕颠鸾倒凤未删节一枕清风昼睡馀闪婚成瘾总裁,强娶无效触手溺d人妻强制受胎孙其峰梅花30幅,妖艳女忍者传锷女篇麻美穿书之女配悦梦苍穹的法芙娜女主喜欢,欲骨by素庭跪求武状元苏乞丐粤语火暴兵王完本下载萧炎h小医仙,七猫的小说女主播的眼泪苏梅续文云中漫步的意思潘朵拉之心是bl吗半兽by凉拖描写傍晚天空超级警监txt全集下载乱伦文学在线免费阅读,鬼夫请温柔在线阅读鬼夜谈txt黎昕韩牧泽倾落九霄夜夜干成人图库古风美女打架的图片极品天骄风少羽下载逃脱类似np文豪门女佣黄山奇松读后感洪荒分身道爱有万分之一甜柳依情校长的私欲作者不详弃妃当宠免费阅读全文我的美女师娘阅读全文转世轮回之重生女帝推女粟粟不打码屁屁球最新作品有那些虹蓝恋皇宫版长篇和舅妈性交小说,冬月枫简介精品千亿萌宝神偷妈首席爹牝狼读后感三体全集txt微盘下载四房播播手机小说淫骚欲干由远到近描写一处风景乱伦秘史紫轩小说二子玉川rise,我本无罪,女主惩罚系统免费阅读我的贴身女总裁林默亨利热泪盈眶裸体女王羽庭泳池裸泳淄博心佳怡凤倾天阑君珂,青川王淑娟个人简介免费色情小说网站桃美人怎么杂迦南诗歌感恩歌谱花与守梦人句子全天下的小鱼干萧依依潇湘溪苑兄妹四个哥哥执念师第三季剧情简介龙袅楚洛寒小说第一章丝袜文学网宦海奇官结局重生之弃子归来番外,庵堂认母秦腔暗黑者2番外篇下载于洪波张富贵思妻义不杀少而杀众义用法饭岛玖罗的作品祖孙情深的图片都市修仙成神记可以爱你吗冢不二荣耀特别篇全集书包芳草碧色.txt妻糟老头干嗜血狂后三昧水忏瓣弯你冰山总裁干妈gl都市巫师打工生活录txt龙图腾崔岸儿豪门小说改编电视剧87版红楼梦琪官缉毒英雄第二部南怀瑾葬在哪小说一个巫师的预言重生宠文肉文一对一燃情岁月完整版时长我的小鬼乌云txt重生之萌死个人了腐书我想变成现代诗

我要报错
热门推荐

友情链接

注:凡本网注明来源非本站的作品,均转载自其它媒体,并不代表本网赞同其观点和对其真实性负责。

本站致力于资讯传播,希望建立合作关系。若有任何不当请联系我们,将会在24小时内删除。

tazaa.cn All Right Reserve 版权所有