[发明专利]一种基于超大规模稀疏矩阵分布式读取减少单节点内存的方法及系统在审
申请号: | 202110755290.0 | 申请日: | 2021-07-05 |
公开(公告)号: | CN115587279A | 公开(公告)日: | 2023-01-10 |
发明(设计)人: | 杜伟;田敏;张赞军;潘景山;刘弢 | 申请(专利权)人: | 山东省计算中心(国家超级计算济南中心) |
主分类号: | G06F17/16 | 分类号: | G06F17/16;G06F17/18;G06F9/50;G06F16/13 |
代理公司: | 济南金迪知识产权代理有限公司 37219 | 代理人: | 杨树云 |
地址: | 250014*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 超大规模 稀疏 矩阵 分布式 读取 减少 节点 内存 方法 系统 | ||
1.一种基于超大规模稀疏矩阵分布式读取减少单节点内存的方法,包括步骤如下:
(1)超大规模稀疏矩阵大多以Rutherford-Boeing格式存储,为了矩阵运算方便和利于并行,将Rutherford-Boeing格式转为行压缩,以行压缩格式存储数据;
(2)矩阵以行压缩格式存储,每个节点计算各自分块矩阵行压缩的行指针、列索引以及非零元值;
(3)每个节点将计算得到的各自的行指针、列索引以及非零元值以行压缩格式写入各自文件;
(4)当应用需要超大规模稀疏矩阵时,节点从各自文件中读取数据。
2.根据权利要求1所述的一种基于超大规模稀疏矩阵分布式读取减少单节点内存的方法,其特征在于,步骤(1)的具体实现过程包括:
A、求出以Rutherford-Boeing格式存储的超大规模稀疏矩阵的每行非零元个数;如式(Ⅰ)、式(Ⅱ)所示:
j=colptr[i+1]-colptr[i] (Ⅰ)
k=rowind[j] (Ⅱ)
式(Ⅰ)至式(Ⅱ)中,i是指从0开始到矩阵列数n的不同取值,i=0,1,....n,n×n是指矩阵维数,j是每列非零元个数,colptr是RB存储的列指针,k是指非零元所在的行标号,rowind是指RB存储的行索引;每次通过式(Ⅰ)、式(Ⅱ)求出超大规模稀疏矩阵的每列非零元所在的行标号后,marker[k]就加1,表示k所在行的非零元个数加1;
继续执行式(Ⅰ)、式(Ⅱ)直至i=n,求出超大规模稀疏矩阵所有行的非零元个数;
B、设置CSR格式的行指针rowptr,初始化为0,如式(Ⅲ)、式(Ⅳ)所示:
rowptr[i+1]=rowptr[i]+marker[i]i=0,1....n (Ⅲ)
marker[i]=rowptr[i] (Ⅳ)
设置CSR格式的列索引colind和非零元nonzval,如式(V)至式(Ⅷ)所示:
row=rowind[j] (V)
repos=marker[row] (Ⅵ)
colind[repos]=i (Ⅶ)
nonzval[repos]=nzval[j] (Ⅷ)
式(V)至式(Ⅷ)中,j=colptr[i+1]-colptr[i],i=0,1,....n,row代表行标号,repos代表非零元是整个矩阵非零元的第几个,nzval代表RB格式的非零元数值;
通过RB格式的colptr和rowind,统计矩阵RB格式的第一列的每个非零元转行压缩在整个矩阵中的位置,得到行压缩时每行第一个非零元的列坐标colind,再依次得到行压缩时其他每行其他非零元的列坐标,非零元的存储也由按列改为按行存储,即将Rutherford-Boeing格式转为行压缩。
3.根据权利要求1或2所述的一种基于超大规模稀疏矩阵分布式读取减少单节点内存的方法,其特征在于,步骤(2)中,假设p个节点,超大规模稀疏矩阵大小是n×n,非零元个数为nnz,超大规模稀疏矩阵的存储量是M,每个节点内存是Mp,则节点个数至少为p,否则,每个节点的内存无法存储分块的数据;
假设p个节点为:P0,P1,P2....Pi....Pp-1,则节点Pi处理的行数n_loci由式(Ⅸ)计算:
若平均分配,则每个节点处理的行数n_loci是若有剩余,由最后一个节点Pp-1来处理,则最后一个节点处理的行数是
节点Pi处理超大规模稀疏矩阵的起始行标号fst_row由式(Ⅹ)计算:
fst_row=Pi*n_loci (Ⅹ)
式(Ⅹ)中,colind和nonzval大小为rowptr[n_loc]-rowptr[0];colind是存储了各非零元在原稀疏矩阵中的列索引,nonzval存储非零元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东省计算中心(国家超级计算济南中心),未经山东省计算中心(国家超级计算济南中心)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110755290.0/1.html,转载请声明来源钻瓜专利网。