[发明专利]一种面向异构众核平台的Im2col加速方法在审
申请号: | 202110349448.4 | 申请日: | 2021-03-31 |
公开(公告)号: | CN114219065A | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 黄则强;刘沙;刘鑫;陈德训;彭超;高捷;王宜鹏 | 申请(专利权)人: | 无锡江南计算技术研究所 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/063;G06N3/08 |
代理公司: | 苏州创元专利商标事务所有限公司 32103 | 代理人: | 王健 |
地址: | 214038 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 异构众核 平台 im2col 加速 方法 | ||
本发明公开一种面向异构众核平台的Im2col加速方法,C*H*W的张量经过Im2col变换后的矩阵形状为(C*Kh*Kw)*(Ho*Wo),其中C是通道数,H和W分别为输入的高度和宽度,Kh和Kw为卷积核大小,Ho和Wo为输出张量的高度和宽度;根据C*Kh的大小选择不同的算法:当C*Kh大于等于64时,从变换后的矩阵出发,按照C*Kh进行任务划分;当C*Kh小于64时,从变换前的矩阵出发,按照C*H进行任务划分。本发明有效提高了Im2col变换的运算效率,作为卷积计算的前处理过程,有效保障了卷积算子和卷积神经网络的高效运行。
技术领域
本发明涉及一种面向异构众核平台的Im2col加速方法,属于异构众核平台上的深度学习技术领域。
背景技术
卷积算子中的Im2col计算是将一个三维矩阵的输入变为二维矩阵,以便用高效的矩阵乘来替换原始的卷积计算,具体来说,就是将C*H*W的张量转化(C*Kh*Kw)*(Ho*Wo)的矩阵,其中C是通道数,H和W分别为输入的高度和宽度,Kh和Kw为卷积核大小,Ho和Wo为输出张量的高度和宽度。假定卷积核的尺寸为3*3,通道数为1,输入为4*4,每次滑动一格,则输出张量的形状为2*2,通过Im2col变换生成的矩阵形状为(1*3*3)*(2*2),计算过程如图1所示。
深度学习中,作为一种特征提取的有效方法,卷积计算占有很大比重,目前存在多种卷积算法,包括Im2col算法、FFT、Winograd算法等,其中Im2col算法使用最多,适用范围最为广泛。这种方法是将比较复杂、不易优化的卷积计算转化为矩阵计算,进而可以减少访存时间,充分利用已经优化好的GEMM库来加速卷积计算,因此该算法包含两部分:Im2col的张量展开和矩阵乘计算,在矩阵乘性能足够高的情况下,对Im2col进行深度众核优化可以有效提升卷积计算的效率,从而进一步加速深度神经网络的训练。
目前在众核平台对卷积计算的优化主要集中在GEMM的优化,而对Im2col尚未进行深度优化,在GEMM性能足够高的情况下,Im2col计算所占比重增加,影响卷积计算性能,进而影响深度神经网络的整体运行效率,因此有必要针对Im2col设计一套对不同输入张量都能有效加速的众核加速算法。
发明内容
本发明的目的是提供一种面向异构众核平台的Im2col加速方法,其有效提高了Im2col变换的运算效率,作为卷积计算的前处理过程,有效保障了卷积算子和卷积神经网络的高效运行。
为达到上述目的,本发明采用的技术方案是:提供一种面向异构众核平台的Im2col加速方法,C*H*W的张量经过Im2col变换后的矩阵形状为(C*Kh*Kw)*(Ho*Wo),其中C是通道数,H和W分别为输入的高度和宽度,Kh和Kw为卷积核大小,Ho和Wo为输出张量的高度和宽度;
根据C*Kh的大小选择不同的算法:当C*Kh大于等于64时,从变换后的矩阵出发,按照C*Kh进行任务划分;当C*Kh小于64时,从变换前的矩阵出发,按照C*H进行任务划分;
当C*Kh大于等于64时,根据输出张量的Ho和输入张量的W选择不同的实现:
当Ho*W小于可分配的最大空间时,计算过程如下:
S11、按照C*Kh将变换后的矩阵以Kw行为单元进行任务划分,映射到从核核组;
S12、对变换后矩阵中的Kw行,通过DMA从输入张量一次读入对应的Ho*W个数据;
S13、对同一行的Kw个卷积核元素,从读入数据分别可以得到对应的Ho*Wo个结果;
S14、分Kw次将每个卷积核对应的结果通过DMA写回主存对应位置。
当Ho*W大于可分配的最大空间时,计算过程如下:
S21、按照C*Kh将变换后的矩阵以Kw行为单元进行任务划分,映射到从核核组;
S22、根据局部存储空间的大小,计算一行W个元素时,可容纳的最大行数col_block;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡江南计算技术研究所,未经无锡江南计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110349448.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:动态内存管理方法
- 下一篇:基于软件环境下的平面绝对位置精度便捷统计评价系统