当前位置: 首页 > 专利查询>湖南大学专利>正文

基于ARMv8体系的计算内核优化方法技术

技术编号:23315905 阅读:21 留言:0更新日期:2020-02-11 18:05
本发明专利技术公开了一种基于ARMv8体系的计算内核优化方法。本发明专利技术针对寄存器使用情况,使用了所有32个寄存器,能够更好更完整地调用硬件资源,节省卷积过程中进行矩阵计算时的矩阵分块时间,从而提升整体的计算效率,帮助我们得到更高的工程效率应用在卷积神经网络中的卷积过程里,能有效加速其在ARMv8体系结构的运算时间。

Optimization method of computing kernel based on armv8

【技术实现步骤摘要】
基于ARMv8体系的计算内核优化方法
本专利技术涉及计算机领域,更具体地说涉及一种基于ARMv8体系的计算内核优化方法。
技术介绍
目前,随着深度学习行业的不断发展,卷积神经网络的应用越来越广,应用所涉及到的需求也就越来越多样化。对于在嵌入式设备上应用深度学习框架来推测各项任务成为新的研究热点,另一方面,嵌入式设备的种类随着科技的发展也已经出现了多种不同芯片的类别。因此,在应用到具体嵌入式设备上进行预测任务时出现的效率性能差别巨大的原因就在于:1.采用了不同的深度学习框架,而不同的工具内部的实现方式有差异。2.不同嵌入式设备平台的处理器核心不同,对于不同的处理器,其内部采用的指令集有差别,很多优化是针对于特定的指令集来进行的优化。
技术实现思路
为解决上述问题,本专利技术提供了一种基于ARMv8体系的计算内核优化方法。本专利技术针对寄存器使用情况,使用了所有32个寄存器,能够更好更完整地调用硬件资源,节省卷积过程中进行矩阵计算时的矩阵分块时间,从而提升整体的计算效率,帮助我们得到更高的工程效率应用在卷积神经网络中的卷积过程里本文档来自技高网...

【技术保护点】
1.一种基于ARMv8体系的计算内核优化方法,其特征在于,包括如下步骤:/n步骤一、构建输入矩阵:通过卷积过程中的im2col函数将卷积核转化成矩阵A,将输入的图像转化成矩阵B;矩阵A矩阵B作为输入矩阵;分别对矩阵A和矩阵B进行量化到8位操作得到量化后的矩阵A和量化后的矩阵B;量化后的矩阵A和量化后的矩阵B作为量化矩阵;/n步骤二、对量化矩阵进行分块打包操作得到数据,即将量化矩阵中元素按照计算内核大小顺序,即按照计算内核大小(8x8)将矩阵按从左至右从上至下的顺序放到连续内存地址;/n步骤三、将数据按照上一步中根据内核布局排列好的顺序加载到寄存器,并操作寄存器数据进行乘加计算;/n步骤四、将数...

【技术特征摘要】
1.一种基于ARMv8体系的计算内核优化方法,其特征在于,包括如下步骤:
步骤一、构建输入矩阵:通过卷积过程中的im2col函数将卷积核转化成矩阵A,将输入的图像转化成矩阵B;矩阵A矩阵B作为输入矩阵;分别对矩阵A和矩阵B进行量化到8位操作得到量化后的矩阵A和量化后的矩阵B;量化后的矩阵A和量化后的矩阵B作为量化矩阵;
步骤二、对量化矩阵进行分块打包操作得到数据,即将量化矩阵中元素按照计算内核大小顺序,即按照计算内核大小(8x8)将矩阵按从左至右从上至下的顺序放到连续内存地址;
步骤三、将数据按照上一步中根据内核布局排列好的顺序加载到寄存器,并操作寄存器数据进行乘加计算;
步骤四、将数据的乘加计算得到的结果存储到中间矩阵,进行下一次乘加,直到所有的数据加载完毕;
步骤五、对得到的结果进行解包操作,即将数据按照计算内核大小顺序原路放回原矩阵位置,从而保证计算结果的准确。


2.如权利要求1所述的基于ARMv8体系的计算内核优化方法,其特征在于,所述步骤一中:
所述矩阵A和矩阵B大小均为5x5,卷积核大小为3x3,按顺序将每一个卷积窗口转换成对应的列向量组成新矩阵;
将输入矩阵进行量化操作得到uint8值即得到量化矩阵,即量化到8bit范围进行运算,其中实数和量化的uint8值的仿射关系式如下

【专利技术属性】
技术研发人员:全哲何楠刘彦彭阳
申请(专利权)人:湖南大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1