Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于混合压缩格式的对角矩阵SPMV在GPU上的实现方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:哈尔滨工程大学

摘要:本发明属于船舶海上航行模拟领域,具体涉及一种基于混合压缩格式的对角矩阵SPMV在GPU上的实现方法。输入COO格式的船舶海上航行模拟矩阵数据文件,将其转化成传统矩阵形式;基于非零元个数的标准差最小策略,将矩阵划分为DIA矩阵和对角线偏移量数组;利用转化的矩阵中剩余的数据,利用基于分块策略的CSR方式进行存储;分别将DIA矩阵数据和CSR相关数据分别从主机端传递到设备端,按照每个线程处理一行的方式进行GPU并行SPMV操作;将两个阶段的计算结果从设备端传递到主机端,并在主机端进行整合,实现船舶海上航行的模拟。本发明用以提高船舶海上航行模拟的稀疏矩阵算法的计算效率。

主权项:1.一种基于混合压缩格式的对角矩阵SPMV在GPU上的实现方法,其特征在于,所述实现方法包括以下步骤:步骤1:输入COO格式的船舶海上航行模拟矩阵数据文件,将其转化成传统矩阵形式;步骤2:基于非零元个数的标准差最小策略,将步骤1转化的矩阵划分为DIA矩阵和对角线偏移量数组;所述步骤2具体包括以下步骤:步骤2.1:基于步骤1转化的矩阵,获得每个对角线中非零元个数,并计算非零元的总数;步骤2.2:获得每个对角线中非零元个数的平均值;步骤2.3:将非零元个数平均值作为阈值,获得原始矩阵中DIA矩阵部分以及偏移量数组;步骤2.4:从DIA矩阵中获得每一列的非零元个数,对应了原始矩阵中每一行的非零元个数;用数组A存储每一列的非零元个数,计算该数组在各个块上的平均值;步骤2.5:将步骤2.4各个块上得到的平均值作为阈值,将满足大于数组A中的非零元个数值依次插入到一个新的数组Bi中,直至Bi中总数大于或等于平均值为止,将Bi作为一个块进行保存;通过计算各个块之间的标准差大小,获得最小的标准差的块数为最优块数;步骤2.6:将DIA矩阵中非零元按照对角线的方式进行存储,同时获得对角线偏移量;步骤3:利用步骤1转化的矩阵中剩余的数据,利用基于分块策略的CSR方式进行存储;步骤4:分别将步骤2的DIA矩阵数据和步骤3的CSR相关数据分别从主机端传递到设备端,按照每个线程处理一行的方式进行GPU并行SPMV操作;步骤5:将步骤4中两个阶段的计算结果从设备端传递到主机端,并在主机端进行整合,实现船舶海上航行的模拟。

全文数据:

权利要求:

百度查询: 哈尔滨工程大学 一种基于混合压缩格式的对角矩阵SPMV在GPU上的实现方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。