【技术实现步骤摘要】
【国外来华专利技术】用于矩阵乘法和归约操作的自动融合的处理器和系统
[0001]至少一个实施例涉及用于执行和促进人工智能的处理资源。例如,至少一个实施例涉及根据本文描述的各种新技术的在训练和使用神经网络时遇到的在图形处理单元上执行的操作以及包括矩阵乘法和归约的操作。
技术介绍
[0002]人工神经网络,如具有多层神经元的深度神经网络,通常涉及使用矩阵乘法操作的操作。矩阵乘法包括对相同的矩阵元素执行重复的算术运算(乘法和加法)。例如,在两个N
×
N矩阵的相乘期间,两个输入矩阵中的每一者中的任何给定元素成为结果矩阵中的N个输出元素的计算的一部分。因此,在单核中央处理单元(CPU)上计算矩阵乘法涉及巨大的开销,其中相同的矩阵元素被多次加载。因此,在矩阵相乘时,加载的速度成为处理的“瓶颈”,这使得即使是高速CPU,也无法实现其全部的计算潜力。
附图说明
[0003]图1是根据至少一个实施例的示例计算设备,在该计算设备中使用多核图形处理单元(GPU)可以执行与归约融合的矩阵乘法;
[0004]图2示出了根据至少一 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种处理器,包括:一个或更多个电路,用于将一个或更多个矩阵中的两个或更多个子部分相乘,并使用两个或更多个并行操作从所述相乘生成两个或更多个向量。2.如权利要求1所述的处理器,其中两个或更多个并行操作包括多个分层操作,所述多个分层操作用于执行所述一个或更多个矩阵中的第一矩阵和所述一个或更多个矩阵中的第二矩阵的矩阵乘法(MM)的归约,并且其中所述一个或更多个电路进一步用于:在每一个分层操作处,经由第一多个子部分表示所述第一矩阵,所述第一多个子部分具有对应于各自的分层操作的阶的大小;以及在所述各自的分层操作处,将归约操作应用于涉及所述第一多个子部分中的一者的MM的结果,以生成所述两个或更多个向量中的对应向量。3.如权利要求2所述的处理器,其中所述一个或更多个电路进一步用于:经由多个第二子部分表示所述第二矩阵。4.如权利要求3所述的处理器,其中在所述各自的分层操作中,所述第一多个子部分中的每一者中的矩阵元素的数量等于所述第二多个子部分中的每一者中的矩阵元素的数量。5.如权利要求2所述的处理器,其中所述一个或更多个电路用于使用包括预定维度的矩阵的MM的硬件指令的一个或更多个实例,以执行最低分层阶的分层操作。6.如权利要求5所述的处理器,其中所述一个或更多个电路用于使用多个线程执行所述硬件指令,每一个线程与以下相关联:输入到所述硬件指令中的矩阵的每一者中的多个输入矩阵元素;以及由所述硬件指令输出的矩阵中的多个输出矩阵元素。7.如权利要求6所述的处理器,其中所述一个或更多个电路用于在应用所述归约操作之前将所述多个输出矩阵元素中的至少一些重新分配给不同的线程。8.如权利要求6所述的处理器,其中所述一个或更多个电路用于将与每一个线程相关联的所述多个输入矩阵元素以及所述多个输出矩阵元素存储在由相应线程可访问的寄存器中。9.如权利要求2所述的处理器,其中所述一个或更多个电路用于将所述MM的结果与辅助矩阵相乘以将所述归约操作应用于所述MM的结果,所述辅助矩阵包括一行零元素或一列零元素中的至少一者。10.如权利要求2所述的处理器,其中所述一个或更多个电路用于使用内核执行最高阶的分层操作,所述内核不同于用于执行其他分层操作的一个或更多个内核。11.一种系统,包括:一个或更多个电路,用于将一个或更多个矩阵中的两个或更多个子部分相乘,并使用两个或更多个并行操作从所述相乘生成两个或更多个向量;以及一个或更多个存储器,用于存储所述两个或更多个向量。12.如权利要求11所述的系统,其中两个或更多个并行操作包括多个分层操作,所述多个分层操作用于执行所述一个或更多个矩阵中的第一矩阵和所述一个或更多个矩阵中的第二矩阵的矩阵乘法(MM)的归约,并且其中所述一个或更多个电路进一步用于:在每一个分层操作处,经由第一多个子部分表示所述第一矩阵,所述第一多个子部分具有对应于各自的分层操作的阶的大小;以及在每一个分层操作处,将归约操作应用于涉及所述第一多个子部分中的一者的MM的结
果,以生成所述两个或更多个向量中的对应向量。13.如权利要求12所述的系统,其中所述一个或更多个电路进一步用于:经由多个第二子部分表示所述第二矩阵。14.如权利要求13所述的系统,其中在所述各自的分层操作中,所述第一多个子部分中的每一者中的矩阵元...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。