CN111381968B - 一种高效运行深度学习任务的卷积运算优化方法及系统 - Google Patents

一种高效运行深度学习任务的卷积运算优化方法及系统 Download PDF

Info

Publication number
CN111381968B
CN111381968B CN202010168033.2A CN202010168033A CN111381968B CN 111381968 B CN111381968 B CN 111381968B CN 202010168033 A CN202010168033 A CN 202010168033A CN 111381968 B CN111381968 B CN 111381968B
Authority
CN
China
Prior art keywords
picture
parameters
cache
convolution kernel
size
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010168033.2A
Other languages
English (en)
Other versions
CN111381968A (zh
Inventor
刘宁
罗旸泽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Yat Sen University
Original Assignee
Sun Yat Sen University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Yat Sen University filed Critical Sun Yat Sen University
Priority to CN202010168033.2A priority Critical patent/CN111381968B/zh
Publication of CN111381968A publication Critical patent/CN111381968A/zh
Application granted granted Critical
Publication of CN111381968B publication Critical patent/CN111381968B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种高效运行深度学习任务的卷积运算优化方法及系统,方法包括输入图片参数和卷积核参数,并对图片参数和卷积核参数进行分割,得到图片子张量和卷积核子张量,将分割后的子张量复制到高速存储器,对存储在L1缓存的子张量进行卷积操作,对卷积操作后的子张量按矩阵分块算法的组装步骤组装起来,得到最终结果。通过根据不同嵌入式平台的硬件参数而调整的矩阵和张量分块策略,能够使整个运算过程,其运算数据更多地从高速存储器获得,而非低速存储,增加运算速度;同时,通过一个合理的所处嵌入式平台汇编级优化的策略,使运算更能利用平台自身的潜力,进一步增加运算速度;此外,采用矩阵分块策略,使实现成本更低。

Description

一种高效运行深度学习任务的卷积运算优化方法及系统
技术领域
本发明涉及计算机性能优化技术领域,特别地是一种高效运行深度学习任务的卷积运算优化方法及系统。
背景技术
目前,深度学习技术和物联网技术正在迅猛发展,而将这两者结合的技术也在不断出现,例如,采用深度学习技术和物联网技术进行监控,采用深度学习技术和物联网技术进行智能分析等等,由此可见,深度学习技术和物联网技术两者结合的技术越来越受大众欢迎。
但是,受限于物联网技术所必须的嵌入式设备的算力,深度学习技术无法在这些设备上得到满意的效果,主要存在以下缺点:1、无法在时间容许范围内获得深度神经网络的输出;2、运行深度神经网络的嵌入式设备会产生很大的能耗;能耗过高会增加嵌入式平台的运行温度,进一步限制CPU的运行频率,使计算机运行更加低效;3、深度学习领域大量的技术无法直接迁移到嵌入式平台上,要实现深度学习技术迁移至嵌入式平台上需要付出大量的额外成本。
发明内容
本发明的目的在于提供一种高效运行深度学习任务的卷积运算优化方法及系统,解决了现有技术存在的无法在时间容许范围内获得深度神经网络的输出、CPU的运行频率慢和成本高的问题。
本发明通过以下技术方案实现的:
一种高效运行深度学习任务的卷积运算优化方法,所述方法基于嵌入式平台,具体包括以下步骤:
步骤S1,向嵌入式平台的内存输入图片参数和卷积核参数,并将所述图片参数和所述卷积核参数分割成大小与高速存储器容量相匹配的图片子张量和卷积核子张量,其中,高速存储器包括L1缓存、L2缓存和L3缓存;
步骤S2,将步骤S1获得的子张量复制到高速存储器中;
步骤S3,将步骤S2获得的存储在L1缓存中的图片子张量和卷积核子张量,使用符合所处嵌入式平台CPU架构的优化算法做卷积操作;
步骤S4,将步骤S3获得的结果按矩阵分块算法的组装步骤组装起来,获得适合嵌入式平台的矩阵分块策略。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S1包括以下步骤:
步骤S11,获取嵌入式平台硬件参数,并根据嵌入式平台硬件参数,计算图片参数和卷积核参数的分块大小;
步骤S12,依据图片参数和卷积核参数的分块大小,对图像参数和卷积核参数进行分割处理。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S11包括以下步骤:
步骤S111,获取嵌入式平台的CPU的L1缓存大小和L2缓存大小;
步骤S112,依据L1缓存大小,计算位于列维度上卷积核参数的分块大小k;
步骤S113,依据L2缓存大小,计算位于行维度上图片参数的分块大小n。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S12包括以下步骤:
步骤S121,获取矩阵大小为(a,b*d*e)的卷积核参数,并依据所述卷积核参数生成(b*d*e-1)/(k+1)个子矩阵;其中,a为输出通道数,b为输入通道数,d为卷积核高度,e为卷积核列宽度;
步骤S122,获取图片大小为(f,g,t)的图片参数,并依据所述图片参数生成f*g*t/(c*h*h)个子张量,所述子张量大小为(c,h,h);其中,c为分割大小,h为在高度维度上连续地按照分块大小(k*n)/c的平方根分割,f为图片通道数,g为图片高度,t为图片宽度。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S2包括以下步骤:
步骤S21,将步骤S121生成的大小为(a,k)的子矩阵进行分割,生成a/4个(4,k)的子矩阵,并对所述生成的a/4个(4,k)的子矩阵进行调整,将调整后的子矩阵复制至L3缓存;
步骤S22,将步骤S122生成的,且大小为(c,h,h)的f*g*t/(c*h*h)个子张量复制至L2缓存。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S3包括以下步骤:
步骤S31,将步骤S21中的排序后的a/4个(4,k)的子矩阵之一复制入L1缓存,行号为i,记为lhs;
步骤S32,将步骤S22获得的大小为(c,h,h)子张量之一复制入L1缓存,记为rhs;
步骤S33,使用所处嵌入式平台汇编级优化过的小型卷积算法对lhs和rhs运算,并将运算结果存入嵌入式平台的内存的对应位置。
作为所述高效运行深度学习任务的卷积运算优化方法的进一步可选方案,所述步骤S33包括以下步骤:
步骤S331,使用所处嵌入平台对应的simd读取指令读取lhs的一列,设列号为j,记为v1;
步骤S332,读取rhs的第(j/(d*e),p,q)到(j/(d*e),p,q+4)的元素,分别用simd指令广播成simd向量,记为v2;其中,P为部分图片参数的图片高度,q为部分图片参数的图片宽度;
步骤S333,用simd乘法将v1分别与四个v2相乘,并将相乘结果与结果寄存器的数值相加并存回结果寄存器;
步骤S334,重复步骤S331至步骤S333,重复次数为d*e次;
步骤S335,重复步骤结束后,将四个寄存器中的(4,4)矩阵存储回结果的第(i*4,p*t+q)的位置。
一种高效运行深度学习任务的卷积运算优化系统,所述系统采用上述任一方法。
本发明的有益效果:
使用本发明方法,通过根据不同嵌入式平台的硬件参数而调整的矩阵和张量分块策略,能够使整个运算过程,其运算数据更多地从高速存储器获得,而非低速存储,增加运算速度;同时,通过一个合理的所处嵌入式平台汇编级优化的策略,使运算更能利用平台自身的潜力,进一步增加运算速度;此外,采用矩阵分块策略,使深度学习技术迁移至嵌入式平台上更加容易实现,降低难度,从而降低了成本。
附图说明
图1为本发明的一种高效运行深度学习任务的卷积运算优化方法的步骤示意图;
图2为本发明的一种高效运行深度学习任务的卷积运算优化方法的流程示意图。
具体实施方式
下面将结合附图以及具体实施例来详细说明本发明,在此以本发明的示意下面将结合附图以及具体实施例来详细说明本发明,在此以本发明的示意性实施例及说明用来解释本发明,但并不作为对本发明的限定。
如图1所示,一种高效运行深度学习任务的卷积运算优化方法,所述方法基于嵌入式平台,具体包括以下步骤:
步骤S1,向嵌入式平台的内存输入图片参数和卷积核参数,并将所述图片参数和所述卷积核参数分割成大小与高速存储器容量相匹配的图片子张量和卷积核子张量,其中,高速存储器包括L1缓存、L2缓存和L3缓存;
步骤S2,将步骤S1获得的子张量复制到高速存储器中;
步骤S3,将步骤S2获得的存储在L1缓存中的图片子张量和卷积核子张量,使用符合所处嵌入式平台CPU架构的优化算法做卷积操作;
步骤S4,将步骤S3获得的结果按矩阵分块算法的组装步骤组装起来,获得适合嵌入式平台的矩阵分块策略。
在本实施例中,使用本发明方法,通过根据不同嵌入式平台的硬件参数而调整的矩阵和张量分块策略,能够使整个运算过程,其运算数据更多地从高速存储器获得,而非低速存储,增加运算速度;同时,通过一个合理的所处嵌入式平台汇编级优化的策略,使运算更能利用平台自身的潜力,进一步增加运算速度;此外,采用矩阵分块策略,使深度学习技术迁移至嵌入式平台上更加容易实现,降低难度,从而降低了成本。
需要说明的是,记步骤S1获得的子张量中Img为所有由图片分割而来的所有子张量,Ker为所有卷积核分割而来的子张量,Ker构成一个分块矩阵;Img经过分割也可以视为一个分块矩阵,分块内部使用步骤S2~S3的方法进行运算,将每一块的运算结果使用分块矩阵计算方法计算最终结果;此外,步骤S1中的图片子张量和卷积核子张量均为一个个不相交,可恢复的,大小与高速存储器容量相匹配的子张量。
优选的,所述步骤S1包括以下步骤:
步骤S11,获取嵌入式平台硬件参数,并根据嵌入式平台硬件参数,计算图片参数和卷积核参数的分块大小;
步骤S12,依据图片参数和卷积核参数的分块大小,对图像参数和卷积核参数进行分割处理。
在本实施例中,使用嵌入式平台硬件参数来计算分块大小能有效利用所处嵌入式平台的高速存储,从而提升计算性能。
优选的,所述步骤S11包括以下步骤:
步骤S111,获取嵌入式平台的CPU的L1缓存大小和L2缓存大小;
步骤S112,依据L1缓存大小,计算位于列维度上卷积核参数的分块大小k;计算公式如下:分块大小k=(L1缓存大小-mr*nr*结果数据标量字节数)/(卷积核参数数据标量字节数*mr+图像数据标量字节数*nr)。其中,mr,nr的值随CPU寄存器数量不同而不同,一般而言,mr=8,nr=4;
步骤S113,依据L2缓存大小,计算位于行维度上图片参数的分块大小n;计算公式如下:分块大小n=L2缓存利用百分比*L2缓存大小/(分块大小k*图像数据标量字节数),L2缓存利用百分比用来控制该方法在CPU运行过程中使用的L2缓存百分比,一般为75%。
在本实施例中,分块大小的计算原则为:图片的分块全部放入CPU的L2缓存中;图片参数、卷积核参数以及运算结果的最小分块全部放入CPU的L1缓存中,这种分配方式能够有效减少整个方法的实现难度,且能最大效率利用所处平台的CPU性能。为了降低方法实现成本,mr的选值为simd向量长度的倍数,而nr的选值为4。
优选的,所述步骤S12包括以下步骤:
步骤S121,获取矩阵大小为(a,b*d*e)的卷积核参数,在列维度上连续地按照分块大小k取子矩阵,不足k的部分则保持原样,生成(b*d*e-1)/(k+1)个子矩阵;其中,a为输出通道数,b为输入通道数,d为卷积核高度,e为卷积核列宽度;
步骤S122,获取图片大小为(f,g,t)的图片参数,通道数维度上连续地按照分块大小(k/(d*e)分割,计分割大小为c,同时,在高度维度上连续地按照分块大小(k*n)/c的平方根分割,记为h,同时,在宽度维度上连续地按照分块大小h分割,最终生成f*g*t/(c*h*h)个子张量;其中,f为图片通道数,g为图片高度,t为图片宽度。
在本实施例中,划分子矩阵,子张量是为了将整个问题分解,利于方法系统实现,降低实现成本,同时,在高度和宽度维度上采用相同的块大小分块可以使计算效率更高。
优选的,所述步骤S2包括以下步骤:
步骤S21,将步骤S121生成的大小为(a,k)的子矩阵的行维度按块大小为4进行分割,生成a/4个(4,k)的子矩阵,并对所述生成的a/4个(4,k)的子矩阵进行调整,将调整后的子矩阵复制至L3缓存;其中,所述调整方式为在(4,k)矩阵内部保持矩阵的列优先存储,而多个(4,k)子矩阵之间采用顺序存储;
步骤S22,将步骤S122生成的,且大小为(c,h,h)的f*g*t/(c*h*h)个子张量复制至L2缓存。
在本实施例中,步骤S21中,将矩阵的行维度按照块大小为4分割可以使后续simd向量化更加有利进行,降低方法实现成本,且能提高计算效能;此外,按列优先存储可以增加内存或缓存的读取速度,间接提高计算性能;同时,步骤S22中,并不是一次性把所有的子张量都复制到L2缓存中。而是在后续步骤需要这一块子张量的时候,才将其复制到L2缓存中。
优选的,所述步骤S3包括以下步骤:
步骤S31,将步骤S21中的排序后的a/4个(4,k)的子矩阵之一复制入L1缓存,行号为i,记为lhs;
步骤S32,将步骤S22获得的大小为(c,h,h)子张量之一复制入L1缓存,记为rhs;
步骤S33,使用所处嵌入式平台汇编级优化过的小型卷积算法对lhs和rhs运算,并将运算结果存入嵌入式平台的内存的对应位置。
在本实施例中,将子矩阵和子张量复制到L1缓存中,确保了后续计算都在L1缓存中运行,能够大幅提高计算效率。
优选的,所述步骤S33包括以下步骤:
步骤S331,使用所处嵌入平台对应的simd读取指令读取lhs的一列,设列号为j,记为v1;
步骤S332,读取rhs的第(j/(d*e),p,q)到(j/(d*e),p,q+4)的元素,分别用simd指令广播成simd向量,记为v2;其中,P为部分图片参数的图片高度,q为部分图片参数的图片宽度;
步骤S333,用simd乘法将v1分别与四个v2相乘,并将相乘结果与结果寄存器的数值相加并存回结果寄存器;
步骤S334,重复步骤S331至步骤S333,重复次数为d*e次;
步骤S335,将四个寄存器中的(4,4)矩阵存储回结果的第(i*4,p*t+q)的位置。
在本实施例中,每次的计算结果为(4,4)的矩阵使紧张的CPU寄存器数量得到缓解;同时,使用simd指令来做数据读取,存储与计算能最大程度利用CPU本身的性能,避免了采用别的指令而产生额外的费用,从而降低方法实现的成本。
需要说明的是,在步骤S334中,重复步骤S331至S333时,重复过程中修改p,q的值,修改序列如下:(p+1,q),(p+2,q),....(p+d,q),(p+d,q+1),(p+d,q+d),重复次数为d*e次。
一种高效运行深度学习任务的卷积运算优化系统,所述系统采用上述任一方法。
以上对本发明实施例所提供的技术方案进行了详细介绍,本文中应用了具体个例对本发明实施例的原理以及实施方式进行了阐述,以上实施例的说明只适用于帮助理解本发明实施例的原理;同时,对于本领域的一般技术人员,依据本发明实施例,在具体实施方式以及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (3)

1.一种高效运行深度学习任务的卷积运算优化方法,所述方法基于嵌入式平台,其特征在于,所述方法具体包括以下步骤:
步骤S1,向嵌入式平台的内存输入图片参数和卷积核参数,并将所述图片参数和所述卷积核参数分割成大小与高速存储器容量相匹配的图片子张量和卷积核子张量,其中,高速存储器包括L1缓存、L2缓存和L3缓存;
步骤S2,将步骤S1获得的子张量复制到高速存储器中;
步骤S3,将步骤S2获得的存储在L1缓存中的图片子张量和卷积核子张量,使用符合所处嵌入式平台CPU架构的优化算法做卷积操作;
步骤S4,将步骤S3获得的结果按矩阵分块算法的组装步骤组装起来,获得适合嵌入式平台的矩阵分块策略;
其中,所述步骤S1包括以下步骤:
步骤S11,获取嵌入式平台硬件参数,并根据嵌入式平台硬件参数,计算图片参数和卷积核参数的分块大小;
步骤S12,依据图片参数和卷积核参数的分块大小,对图像参数和卷积核参数进行分割处理;
所述步骤S11包括以下步骤:
步骤S111,获取嵌入式平台的CPU的L1缓存大小和L2缓存大小;
步骤S112,依据L1缓存大小,计算位于列维度上卷积核参数的分块大小k;
步骤S113,依据L2缓存大小,计算位于行维度上图片参数的分块大小n;
所述步骤S12包括以下步骤:
步骤S121,获取矩阵大小为(a,b*d*e)的卷积核参数,并依据所述卷积核参数生成(b*d*e-1)/(k+1)个子矩阵;其中,a为输出通道数,b为输入通道数,d为卷积核高度,e为卷积核列宽度;
步骤S122,获取图片大小为(f,g,t)的图片参数,并依据所述图片参数生成f*g*t/(c*h*h)个子张量,所述子张量大小为(c,h,h);其中,c为分割大小,h为在高度维度上连续地按照分块大小(k*n)/c的平方根分割,f为图片通道数,g为图片高度,t为图片宽度;
所述步骤S2包括以下步骤:
步骤S21,将步骤S121生成的大小为(a,k)的子矩阵进行分割,生成a/4个(4,k)的子矩阵,并对所述生成的a/4个(4,k)的子矩阵进行调整,将调整后的子矩阵复制至L3缓存;
步骤S22,将步骤S122生成的,且大小为(c,h,h)的f*g*t/(c*h*h)个子张量复制至L2缓存;
所述步骤S3包括以下步骤:
步骤S31,将步骤S21中的排序后的a/4个(4,k)的子矩阵之一复制入L1缓存,行号为i,记为lhs;
步骤S32,将步骤S22获得的大小为(c,h,h)子张量之一复制入L1缓存,记为rhs;
步骤S33,使用所处嵌入式平台汇编级优化过的小型卷积算法对lhs和rhs运算,并将运算结果存入嵌入式平台的内存的对应位置。
2.根据权利要求1所述的一种高效运行深度学习任务的卷积运算优化方法,其特征在于:所述步骤S33包括以下步骤:
步骤S331,使用所处嵌入平台对应的simd读取指令读取lhs的一列,设列号为j,记为v1;
步骤S332,读取rhs的第(j/(d*e),p,q)到(j/(d*e),p,q+4)的元素,分别用simd指令广播成simd向量,记为v2;其中,p为部分图片参数的图片高度,q为部分图片参数的图片宽度;
步骤S333,用simd乘法将v1分别与四个v2相乘,并将相乘结果与结果寄存器的数值相加并存回结果寄存器;
步骤S334,重复步骤S331至步骤S333,重复次数为d*e次;
步骤S335,重复步骤结束后,将四个寄存器中的(4,4)矩阵存储回结果的第(i*4,p*t+q)的位置。
3.一种高效运行深度学习任务的卷积运算优化系统,其特征在于,所述系统采用权利要求1-2任意一种方法。
CN202010168033.2A 2020-03-11 2020-03-11 一种高效运行深度学习任务的卷积运算优化方法及系统 Active CN111381968B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010168033.2A CN111381968B (zh) 2020-03-11 2020-03-11 一种高效运行深度学习任务的卷积运算优化方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010168033.2A CN111381968B (zh) 2020-03-11 2020-03-11 一种高效运行深度学习任务的卷积运算优化方法及系统

Publications (2)

Publication Number Publication Date
CN111381968A CN111381968A (zh) 2020-07-07
CN111381968B true CN111381968B (zh) 2023-04-25

Family

ID=71222704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010168033.2A Active CN111381968B (zh) 2020-03-11 2020-03-11 一种高效运行深度学习任务的卷积运算优化方法及系统

Country Status (1)

Country Link
CN (1) CN111381968B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112364985B (zh) * 2020-11-13 2023-07-18 河海大学 一种基于分布式编码的卷积优化方法
CN112561943B (zh) * 2020-12-23 2022-11-22 清华大学 一种基于脉动阵列卷积运算数据复用的图像处理方法
WO2024000464A1 (zh) * 2022-06-30 2024-01-04 华为技术有限公司 一种张量计算的分块策略生成方法及装置
CN116303108B (zh) * 2022-09-07 2024-05-14 芯砺智能科技(上海)有限公司 一种适用于并行计算架构的权重地址排布方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110070181A (zh) * 2019-04-30 2019-07-30 深圳朴生智能科技有限公司 一种用于边缘计算设备的深度学习的优化方法
CN110188795A (zh) * 2019-04-24 2019-08-30 华为技术有限公司 图像分类方法、数据处理方法和装置
CN110246078A (zh) * 2019-05-31 2019-09-17 北京航空航天大学 一种基于嵌入式gpu和卷积计算的图像处理方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110188795A (zh) * 2019-04-24 2019-08-30 华为技术有限公司 图像分类方法、数据处理方法和装置
CN110070181A (zh) * 2019-04-30 2019-07-30 深圳朴生智能科技有限公司 一种用于边缘计算设备的深度学习的优化方法
CN110246078A (zh) * 2019-05-31 2019-09-17 北京航空航天大学 一种基于嵌入式gpu和卷积计算的图像处理方法和装置

Also Published As

Publication number Publication date
CN111381968A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
CN111381968B (zh) 一种高效运行深度学习任务的卷积运算优化方法及系统
US20230305808A1 (en) Accelerated mathematical engine
US11308398B2 (en) Computation method
CN110659728B (zh) 神经网络优化方法、装置、计算机设备及存储介质
Gupta et al. Pqc acceleration using gpus: Frodokem, newhope, and kyber
US20240005135A1 (en) Accelerating neural networks with low precision-based multiplication and exploiting sparsity in higher order bits
CN112106078A (zh) 神经网络处理元件
CN112292816A (zh) 处理核心数据压缩和存储系统
US20200159810A1 (en) Partitioning sparse matrices based on sparse matrix representations for crossbar-based architectures
CN112199636B (zh) 适用于微处理器的快速卷积方法及装置
CN113222101A (zh) 深度学习处理装置、方法、设备和存储介质
Ahmad et al. FFConv: an FPGA-based accelerator for fast convolution layers in convolutional neural networks
US20190042926A1 (en) Deep compressed network
Fatima et al. Faster schrödinger-style simulation of quantum circuits
CN112836823B (zh) 基于循环重组和分块的卷积神经网络反向传播映射方法
CN114003201A (zh) 矩阵变换方法、装置及卷积神经网络加速器
CN117610040A (zh) 基于硬件模块执行数论变换ntt的方法和硬件模块
US20220188613A1 (en) Sgcnax: a scalable graph convolutional neural network accelerator with workload balancing
CN111788584A (zh) 一种神经网络计算方法和装置
CN111796797B (zh) 一种利用ai加速器实现环上多项式乘法计算加速的方法和装置
CN115170381A (zh) 一种基于深度学习的视觉slam加速系统及方法
CA3186227A1 (en) System and method for accelerating training of deep learning networks
CN113642722A (zh) 用于卷积计算的芯片及其控制方法、电子装置
Freire et al. Enhancing the sparse matrix storage using reordering techniques
Mariano et al. A vectorized, cache efficient LLL implementation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant