System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机硬件,尤其涉及一种双稀疏矩阵的乘法加速方法、装置、设备、介质及产品。
技术介绍
1、算子数据流优化和计算和编排方法是一种能有效优化硬件计算过程中计算、带宽与存储资源利用率的技术方案。
2、现有的数据流优化与计算和编排方法对于双稀疏模式数据(也即,算子的左右操作数均为稀疏数据)的矩阵乘法算子没有实现,因此,直接使用现有的方案不能对于双稀疏模式数据进行高效的矩阵乘法计算。
技术实现思路
1、本专利技术实施例提供了一种双稀疏矩阵的乘法加速方法、装置、设备、介质及产品,以充分发挥稀疏计算硬件在计算双稀疏矩阵乘法时的加速性能。
2、根据本专利技术实施例的一方面,提供了一种双稀疏矩阵的乘法加速方法,包括:
3、根据稀疏矩阵乘法需求,在计算芯片的全局内存中定位与第一稀疏矩阵匹配的压缩矩阵集合和第二稀疏矩阵;
4、其中,第一稀疏矩阵包含多个设定尺寸的压缩单元,每个压缩单元包含至少一个有效行和至少一个稀疏行,每个有效行包含至少一个结构化稀疏计算存储单元;各结构化稀疏计算存储单元均处于相同稀疏模式;压缩矩阵集合中包含用于存储第一稀疏矩阵中非0数据的压缩数据矩阵、用于存储第一稀疏矩阵中有效行在所属压缩单元中位置的索引矩阵,和用于存储非0数据在所属结构化稀疏计算存储单元中位置的元数据矩阵;
5、将压缩矩阵集合和第二稀疏矩阵,以数据分块的形式从全局内存中逐级搬运至计算芯片的硬件寄存器中;
6、通过计算芯片的稀疏计算单
7、根据本专利技术实施例的另一方面,还提供了一种双稀疏矩阵的乘法加速装置,包括:
8、乘法元素定位模块,用于根据稀疏矩阵乘法需求,在计算芯片的全局内存中定位与第一稀疏矩阵匹配的压缩矩阵集合和第二稀疏矩阵;
9、其中,第一稀疏矩阵包含多个设定尺寸的压缩单元,每个压缩单元包含至少一个有效行和至少一个稀疏行,每个有效行包含至少一个结构化稀疏计算存储单元;各结构化稀疏计算存储单元均处于相同稀疏模式;压缩矩阵集合中包含用于存储第一稀疏矩阵中非0数据的压缩数据矩阵、用于存储第一稀疏矩阵中有效行在所属压缩单元中位置的索引矩阵,和用于存储非0数据在所属结构化稀疏计算存储单元中位置的元数据矩阵;
10、逐级搬运模块,用于将压缩矩阵集合和第二稀疏矩阵,以数据分块的形式从全局内存中逐级搬运至计算芯片的硬件寄存器中;
11、乘法计算模块,用于通过计算芯片的稀疏计算单元,根据硬件寄存器中分次加载的数据,逐步计算出第一稀疏矩阵和第二稀疏矩阵的乘法结果。
12、根据本专利技术实施例的另一方面,还提供了一种电子设备,所述电子设备包括:
13、至少一个计算芯片;以及
14、与所述至少一个计算芯片通信连接的存储器;其中,
15、所述存储器存储有可被所述至少一个计算芯片执行的计算机程序,所述计算机程序被所述至少一个计算芯片执行,以使所述至少一个计算芯片能够执行如本专利技术任一实施例所述的双稀疏矩阵的乘法加速方法。
16、根据本专利技术实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算芯片执行时实现本专利技术任一实施例所述的双稀疏矩阵的乘法加速方法。
17、根据本专利技术实施例的另一方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被计算芯片执行时实现如本专利技术任一实施例所述的双稀疏矩阵的乘法加速方法的步骤。
18、本专利技术实施例的技术方案,通过将需要进行乘法计算的双稀疏矩阵按照特定的压缩格式进行压缩存储后,将上述特定压缩格式的双稀疏矩阵以数据分块的形式从全局内存中逐级搬运至计算芯片的硬件寄存器中,并通过计算芯片的稀疏计算单元,根据硬件寄存器中分次加载的数据,逐步计算出双稀疏矩阵的乘法结果的实现方式,充分考虑了基于双稀疏矩阵进行矩阵乘法计算时的稀疏特性,通过采用与该稀疏特性相适配的数据分块以及数据搬运技术,可以充分发挥计算芯片中稀疏计算单元的硬件加速性能,进而大大优化双稀疏矩阵乘法运算过程中的计算、带宽以及存储资源的开销,特别适用于混合专家模型的模型计算场景中。
19、应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。
本文档来自技高网...【技术保护点】
1.一种双稀疏矩阵的乘法加速方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,将压缩矩阵集合,以数据分块的形式从全局内存中逐级搬运至计算芯片的硬件寄存器中,包括:
3.根据权利要求2所述的方法,其特征在于,在计算芯片的全局内存中定位与第一稀疏矩阵匹配的压缩矩阵集合和第二稀疏矩阵的同时,还包括:
4.根据权利要求3所述的方法,其特征在于,在将各压缩数据矩阵分块、各索引矩阵分块以及各元数据矩阵分块,从全局内存逐次搬运至共享内存中之后,还包括:
5.根据权利要求2所述的方法,其特征在于,根据与稀疏计算单元匹配的寄存器映射关系,将各压缩数据矩阵二次分块、各索引矩阵二次分块以及各元数据矩阵二次分块中的至少一项,从共享内存中逐次搬运至硬件寄存器中,包括:
6.根据权利要求3所述的方法,其特征在于,通过计算芯片的稀疏计算单元,根据硬件寄存器中分次加载的数据,逐步计算出第一稀疏矩阵和第二稀疏矩阵的乘法结果,包括:
7.根据权利要求6所述的方法,其特征在于,通过稀疏计算单元,根据一次稀疏分块矩阵以及当前第二稀
8.根据权利要求7所述的方法,其特征在于,在通过稀疏计算单元,根据一次稀疏分块矩阵以及当前第二稀疏矩阵二次分块,执行乘法计算之后,还包括:
9.根据权利要求1-8任一项所述的方法,其特征在于,第一稀疏矩阵中具体包含多个M*V尺寸的压缩单元;
10.根据权利要求9所述的方法,其特征在于,在每次进行数据分块的过程中,V为列切分方向上切分尺寸的整数倍;以及
11.根据权利要求1-8任一项所述的方法,其特征在于,第一稀疏矩阵为混合专家模型中的模型权重矩阵,第二稀疏矩阵为输入至混合专家模型中混合模型层的中间激活值稀疏矩阵。
12.一种双稀疏矩阵的乘法加速装置,其特征在于,包括:
13.一种电子设备,其特征在于,所述电子设备包括:
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使计算芯片执行时实现权利要求1-11中任一项所述的双稀疏矩阵的乘法加速方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序在被计算芯片执行时实现根据权利要求1-11中任一项所述的双稀疏矩阵的乘法加速方法。
...【技术特征摘要】
1.一种双稀疏矩阵的乘法加速方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,将压缩矩阵集合,以数据分块的形式从全局内存中逐级搬运至计算芯片的硬件寄存器中,包括:
3.根据权利要求2所述的方法,其特征在于,在计算芯片的全局内存中定位与第一稀疏矩阵匹配的压缩矩阵集合和第二稀疏矩阵的同时,还包括:
4.根据权利要求3所述的方法,其特征在于,在将各压缩数据矩阵分块、各索引矩阵分块以及各元数据矩阵分块,从全局内存逐次搬运至共享内存中之后,还包括:
5.根据权利要求2所述的方法,其特征在于,根据与稀疏计算单元匹配的寄存器映射关系,将各压缩数据矩阵二次分块、各索引矩阵二次分块以及各元数据矩阵二次分块中的至少一项,从共享内存中逐次搬运至硬件寄存器中,包括:
6.根据权利要求3所述的方法,其特征在于,通过计算芯片的稀疏计算单元,根据硬件寄存器中分次加载的数据,逐步计算出第一稀疏矩阵和第二稀疏矩阵的乘法结果,包括:
7.根据权利要求6所述的方法,其特征在于,通过稀疏计算单元,根据一次稀疏分块矩阵以及当前第二稀疏矩阵二次分块,执行乘法计算,具体包括:
8.根...
【专利技术属性】
技术研发人员:姚建国,吴晨鹏,顾琦琪,石恒,张亚林,
申请(专利权)人:上海燧原科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。