【技术实现步骤摘要】
一种基于GPGPU可重构架构的方法及计算系统
本专利技术涉及计算领域,更具体涉及一种基于GPGPU可重构架构的方法及计算系统。
技术介绍
深度神经网络(DNN)是当前人工智能(AI)应用的基础,例如:语音识别、图像识别、视频处理、自动驾驶、癌症检测、游戏对抗等,而且在部分领域,DNN已经超过了人类的精确性。图1显示了一个较为简单的神经网络计算过程:输入层的神经元将接收到的信息传递到神经网络中间层(也称为隐藏层),而隐藏层的“权重和”最终会传输到输出层,并最终呈现给用户。通常会把神经元的输入或输出称为“激活”(activation),而把突触称为“权重”(weight)。在本专利技术中,包括说明书及其附图中,后续会使用activation/weight、激活/权重、输入或输出/权重。本领域技术人员应该理解,这些术语是可以替换使用的。图2展示了每层的计算:Wij是权重,xi是输入激活,yj是输出激活,f(.)是一个非线性函数,b则是偏置。一种常用的DNN形式被称为卷积神经网络(CNN),含 ...
【技术保护点】
1.一种基于GPGPU可重构架构的方法,其特征在于,包括:/n根据计算中矩阵乘法或卷积运算的参与程度,选择架构模式,其中,所述架构模式包括通用图形处理器模式和混合脉动阵列模式;/n当选择通用图形处理器模式时,计算系统中的寄存器被配置为以通用图形处理器的通用矩阵乘法方式进行数据存取与运算;/n当选择混合脉动阵列模式时,计算系统中的寄存器被配置为以混合脉动阵列的直接卷积方式进行数据存取与运算。/n
【技术特征摘要】 【专利技术属性】
1.一种基于GPGPU可重构架构的方法,其特征在于,包括:
根据计算中矩阵乘法或卷积运算的参与程度,选择架构模式,其中,所述架构模式包括通用图形处理器模式和混合脉动阵列模式;
当选择通用图形处理器模式时,计算系统中的寄存器被配置为以通用图形处理器的通用矩阵乘法方式进行数据存取与运算;
当选择混合脉动阵列模式时,计算系统中的寄存器被配置为以混合脉动阵列的直接卷积方式进行数据存取与运算。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
当所选择的架构模式与计算系统当前所采用的架构模式不同时,对架构模式进行切换。
3.根据权利要求2所述的方法,其特征在于,所述的对架构模式进行切换进一步包括:
等待之前未执行完的计算任务完成并刷新缓存完成后,将所述计算系统中的寄存器从当前所采用的架构模式重新配置为所选择的架构模式;
模式重构完成后,开始接受新的计算任务。
4.根据权利要求1所述的方法,其特征在于,所述计算系统中的寄存器被配置为多个计算单元,每个计算单元被配置为同时完成一个或多个乘法运算并将乘法运算的结果相加得到每个计算单元的计算结果。
5.根据权利要求4所述的方法,其特征在于,每个计算单元被配置为同时完成最多8个乘法运算并将乘法运算的结果相加得到每个计算单元的计算结果。
6.根据权利要求4所述的方法,其特征在于,在所述通用图形处理器模式下,各个计算单元的计算结果通过指令进行组合或累加。
7.根据权利要求4所述的方法,其特征在于,在所述混合脉动阵列模式下,对于一维卷积操作:
将卷积核数据的m个元素固定于计算单元中,使输入数据的n个元素按时钟周期依次滑动进入计算单元,其中,m、n为自然数且m≤n;
在每个时钟周期,使卷积核数据的m个元素分别一一对应于输入数据的n个元素中的m个数据,使卷积核数据的m个元素与滑动到计算单元中对应位置上的输入数据的对应的m个元素分别进行乘法运算并将乘积相加,存为当前时钟周期的计算结果;
依次输出每个时钟周期的计算结果,得到n-m+1个计算结果,作为输出数据的n-m+1个元素。
8.根据权利要求7所述的方法,其特征在于,在所述混合脉动阵列模式下,对于二维卷积操作:
对于m行m列的卷积核矩阵和nr行nc列的输入矩阵,输出矩阵为nr-m+1行nc-m+1列的矩阵,nr、nc为自然数且m≤nr,m≤nc;
使卷积核矩阵的m行元素的每一行分别与输入矩阵的第i到i+m行元素中的对应一行进行m次一维卷积操作,得到m个数据行,每个数据行有nc-m+1个元素,将m个数据行上的对应元素累加,得到输出矩阵的第i行的nc-m+1个元素,其中i=1,2,...,nr-m+1。
9.根据权利要求8所述的方法,其特征在于,在所述混合脉动阵列模式下,对于二维卷积操作:
将计算单元组成计算单元阵列。
10.根据权利要求9所述的方法,其特征在于,在所述混合脉动阵列模式下,对于二维卷积操作:
所述计算单元阵列为m行(nr-m+1)列的计算单元阵列,其中第i列计算单元用于得到输出矩阵的第i行的运算。
11.根据权利要求9所述的方法,其特征在于,在所述混合脉动阵列模式下,对于二维卷积操作:
按时钟周期,卷积核矩阵的行在计算单元阵列上的一个方向上复用,输入矩阵的行沿计算单元阵列的对角线传播,计算单元阵列中各个计算单元的计算结果沿计算单元阵列上的另一个方向传播累加。
12.根据权利要求10所述的方法,其特征在于,在所述混合脉动阵列模式下,对于二维卷积操作:
卷积核矩阵的m行分别对应于计算单元阵列的m行,按时钟周期横向复用,与输入矩阵的相应行进行一维卷积操作;
输入矩阵从第i行起至第i+m-1行,按时钟周期,依次进入计算单元阵列的第i列中的m个计算单元;
计算单元阵列的第i列中的m个计算单元将每个时钟周期的计算结果按时钟周期依次纵向传播到相邻的下一计算单元,从而在同一列的纵向上最后一个计算单元按时钟周期依次输出得到输出矩阵第i行的nc-m+1个元素。
13.根据权利要求8所述的方法,其特征在于,nr=nc。
14.根据权利要求7所述的方法,其特征在于,在人工神经网络中,卷积核数据为网络权重数据,输入数据为输入特征图数据,输出数据为输出特征图数据。
15.根据权利要求8所述的方法,其特征在于,在人工神经网络中,卷积核矩阵为网络权重矩阵,输入矩阵为输入特征图矩阵,输出矩阵为输出特征图矩阵。
技术研发人员:李颖,
申请(专利权)人:沐曦集成电路上海有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。