优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法技术

技术编号:10316179 阅读:312 留言:0更新日期:2014-08-13 17:36
本发明专利技术公开了一种优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法。本发明专利技术方法采用的QCSR存储结构结合四叉树结构和CSR存储结构的优势对稀疏矩阵进行递归式分解和重排列实现稀疏矩阵的存储,使得稀疏矩阵向量乘运行过程对矩阵形式更具有普适性,尤其适用于总体稀疏但局部存在较多稠密子矩阵的矩阵。本发明专利技术方法在CPU/GPU异构并行系统上通过线程映射优化、数据存取优化、数据传输优化和数据复用优化四个策略实现了基于QCSR存储结构的稀疏矩阵向量乘。本发明专利技术所公开的方法可在稀疏矩阵向量乘数值计算过程提高数据局部性和缓存命中率,取得了更好的计算加速和整体加速效果,进而提升了不可压缩管流模拟效率。

【技术实现步骤摘要】

本专利技术属于流体力学数值模拟,尤其涉及一种。
技术介绍
不可压缩管流问题作为流体力学的重要研究对象,对此进行的研究成果被广泛应用于等离子体物理学、磁流体力学和天体物理学等相关领域的科学研究和工业技术中。随着计算机科学技术的发展,需经过现场试验才能解决的不可压缩管流问题已可以由计算机数值模拟方法解决。不可压缩管流模拟需求解大型线性方程组,即形式O为矩阵办为向量),而求解方程组的矩阵^往往是稀疏矩阵,其中非零元素数目占矩阵总容量不足5%。因此可以通过优化稀疏向量矩阵乘过程来提升不可压缩管流模拟的效率。稀疏矩阵向量乘运算因矩阵稀疏模式与存储格式,矩阵元素缺乏时间局部性,非零元素的间接内存引用和向量的不规则访问等因素导致计算性能并不高。当前研究主要从降低时间复杂度和计算机体系结构两方面改进稀疏矩阵向量乘运算的效果。降低稀疏矩阵向量乘的时间复杂度的优化方法在大规模矩阵运算过程中因浮点运算操作会导致误差累积,主要适用于对精度要求低的领域。针对计算机处理器体系结构特点进行稀疏矩阵向量乘优化的方法主要从数据结构的改进、底层指令优化、并行优化技术和自动调优等四方面提闻了运算效率。这些方法受本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201410129845.html" title="优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法原文来自X技术">优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法</a>

【技术保护点】
优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法,其特征在于该方法具体是:步骤1、读取方程组,利用QCSR存储结构存储稀疏矩阵:首先按照行主序依次读入稀疏矩阵的非零元素,然后按照分块方式对矩阵进行行平均划分,并根据列主序对每个划分块内的元素重新排序存储,在当前划分块区间内,以第一个未在块区间内的非零元素所在列为起始列,按分块方式对矩阵进行列平均划分依次递归划分;最后,当子矩阵块大小小于设定的分块大小时,矩阵递归划分结束,获取叶子结点分块矩阵并保存各叶子结点边界内的元素信息即可完成存储,此时叶子结点分块矩阵的大小与Cache容量相适应;步骤2、将转换后的稀疏矩阵数据传输到GPU:采用分页锁定的传...

【技术特征摘要】
1.优化稀疏矩阵向量乘提升不可压缩管流模拟效率的方法,其特征在于该方法具体是: 步骤1、读取方程组,利用QCSR存储结构存储稀疏矩阵:首先按照行主序依次读入稀疏矩阵的非零元素,然后按照分块方式对矩阵进行行平均划分,并根据列主序对每个划分块内的元素重新排序存储,在当前划分块区间内,以第一个未在块区间内的非零元素所在列为起始列,按分块方式对矩阵进行列平均划分依次递归划分;最后,当子矩阵块大小小于设定的分块大小时,矩阵递归划分结束,获取叶子结点分块矩阵并保存各叶子结点边界内的元素信息即可完成存储,此时叶子结点分块矩阵的大小与Cache容量相适应; 步骤2、将转换后的稀疏矩阵数据传输到GPU:采用分页锁定的传输方式申请一块写结合类型的内存,再将稀疏矩阵的非零元素拷贝到全局存储器; 步骤3、数据存取优化:全局存储器访问方式采用硬件优化的合并访问模式,采用线程块中连续的线程访问连...

【专利技术属性】
技术研发人员:张纪林万健刘恩益毛洁任永坚任祖杰殷昱煜蒋从锋周丽
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1