基于x86架构的稠密矩阵乘法汇编代码自动生成方法

    公开(公告)号:CN102750150B

    公开(公告)日:2015-05-13

    申请号:CN201210199706.6

    申请日:2012-06-14

    Abstract: 本发明公开了一种基于x86架构的稠密矩阵乘法汇编代码自动生成方法,属于计算机系统应用技术领域。本方法为:1)将稠密矩阵乘法中的源矩阵A、B分别划分为多个子块矩阵;其中,矩阵A划分的子块矩阵AMc*Kc大小为Mc*Kc,矩阵B划分的子块矩阵BKc*Nc大小为Kc*Nc;2)将每个子块矩阵AMc*Kc拷贝到连续的地址空间中,将每个子块矩阵BKc*Nc拷贝至连续的地址空间中;3)代码生成工具利用变化函数将输入的每一AMc*Kc*BKc*Nc子块矩阵乘法过程翻译为x86处理器支持的汇编代码。本发明的代码生成效率高,并可方便的移植到不同的x86处理器上。

    一种稀疏矩阵的存储方法CSRL及基于该方法的SpMV实现方法

    公开(公告)号:CN103336758A

    公开(公告)日:2013-10-02

    申请号:CN201310271126.8

    申请日:2013-06-29

    Abstract: 本发明公开一种稀疏矩阵的存储方法CSRL及SpMV实现方法,按行扫描稀疏矩阵A,用数组val顺序存储每个非零元值信息;定义列下标连续的若干个非零元为一个连续非零元段,用数组jas记录每个连续非零元段的第一个元素的列下标,用数组jan记录每个连续非零元段的非零元个数;用数组ptr记录稀疏矩阵A每行第一个连续非零元段的起始索引。本发明的数据存储方法对非零元的列索引合并存储,减小了存储空间需求;充分挖掘了稀疏矩阵的数据局部性,据此可以利用SIMD指令进行存取和计算,并可减少内存访问次数,提高了稀疏矩阵向量乘SpMV的性能。

    基于x86架构的稠密矩阵乘法汇编代码自动生成方法

    公开(公告)号:CN102750150A

    公开(公告)日:2012-10-24

    申请号:CN201210199706.6

    申请日:2012-06-14

    Abstract: 本发明公开了一种基于x86架构的稠密矩阵乘法汇编代码自动生成方法,属于计算机系统应用技术领域。本方法为:1)将稠密矩阵乘法中的源矩阵A、B分别划分为多个子块矩阵;其中,矩阵A划分的子块矩阵AMc*Kc大小为Mc*Kc,矩阵B划分的子块矩阵BKc*Nc大小为Kc*Nc;2)将每个子块矩阵AMc*Kc拷贝到连续的地址空间中,将每个子块矩阵BKc*Nc拷贝至连续的地址空间中;3)代码生成工具利用变化函数将输入的每一AMc*Kc*BKc*Nc子块矩阵乘法过程翻译为x86处理器支持的汇编代码。本发明的代码生成效率高,并可方便的移植到不同的x86处理器上。

    一种采用带有局部信息的压缩稀疏行的稀疏矩阵存储方法及基于该方法的SpMV实现方法

    公开(公告)号:CN103336758B

    公开(公告)日:2016-06-01

    申请号:CN201310271126.8

    申请日:2013-06-29

    Abstract: 本发明公开一种稀疏矩阵的存储方法CSRL及SpMV实现方法,按行扫描稀疏矩阵A,用数组val顺序存储每个非零元值信息;定义列下标连续的若干个非零元为一个连续非零元段,用数组jas记录每个连续非零元段的第一个元素的列下标,用数组jan记录每个连续非零元段的非零元个数;用数组ptr记录稀疏矩阵A每行第一个连续非零元段的起始索引。本发明的数据存储方法对非零元的列索引合并存储,减小了存储空间需求;充分挖掘了稀疏矩阵的数据局部性,据此可以利用SIMD指令进行存取和计算,并可减少内存访问次数,提高了稀疏矩阵向量乘SpMV的性能。

Patent Agency Ranking