[发明专利]一种线性方程组的数据处理方法及装置有效

专利信息
申请号: 201210027340.4 申请日: 2012-02-08
公开(公告)号: CN102609393A 公开(公告)日: 2012-07-25
发明(设计)人: 张清;沈铂;吴庆;廖文军 申请(专利权)人: 浪潮(北京)电子信息产业有限公司
主分类号: G06F17/11 分类号: G06F17/11
代理公司: 北京安信方达知识产权代理有限公司 11262 代理人: 栗若木;曲鹏
地址: 100085 北京市海*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 线性方程组 数据处理 方法 装置
【说明书】:

技术领域

发明涉及计算机高性能计算领域、科学与工程数值计算领域,具体涉及一种线性方程组的数据处理方法及装置。

背景技术

近几年来,世界上和我国高性能计算机得发展取得了长足的进展。每秒百万亿次、数千万亿次超级计算机相继研究成功、并投入工业生产,使得以前许多无法求解和研究的问题成为可能。

大规模的科学与工程数值计算是高性能计算重要应用领域之一,其中线性方程组的求解是一个非常普遍的问题,它在很多工程领域被涉及,如石油勘探、天气预报,湍流模拟等。

对于工业生产上某些领域,一些功能的核心算法涉及到线性方程组的求解,目前,人们往往使用大规模的CPU集群来进行处理,其原理是一个CPU核处理一个线性方程组或是多个核处理一个线性方程组,最后将各个CPU核的结果汇总输出。这种做法CPU集群的维护管理费用、功耗都非常高,而且其处理的时间长,远远满足不了工业生产的需求。随着GPU(Graphic Processing Unit,图形处理器)的出现,GPU利用其众核处理能力,其性能峰值和内存带宽远远高于CPU,而且十分适合解线程方程组这种密集计算型算法案例,目前通常的做法是一个GPU Kenrel计算一个方程,如开源magma库的LU分解求解线性方程组就是采用这种处理方法,其非常适合对于大型线程方程组的求解,但是对于工业上多次求解线程方程组,将出现GPU Kernel的反复调用问题,造成一些额外调用开销。

可见,为满足工业生产的需求,需要一种针对不同规模的线性方程组求解的方案。

发明内容

本发明所要解决的技术问题是,提供一种线性方程组的数据处理方法及装置,能够针对不同规模的线性方程组进行求解。

为了解决上述技术问题,本发明公开了一种线性方程组的数据处理方法,包括:

系统根据图形处理器(GPU)显存大小及所要计算的线性方程组系数矩阵维度大小确定GPU一次性并行求解的最大线性方程组个数M;

当M大于或等于GPU的流处理器个数时,确定当前所要计算的是小型线性方程组,则通过一个GPU内核(Kernel)一次性应并行求解M个方程直到求解完整个线性方程组;

当M小于GPU的流处理器个数时,确定当前所要计算的是大型线性方程组,则调用基于GPU和众核架构的矩阵代数库进行运算,其中,一次求解一个线性方程组。

较佳地,上述方法中,系统根据GPU显存大小及所要计算的线性方程组系数矩阵维度大小确定GPU一次性并行求解的最大线性方程组个数M的过程如下:

确定GPU可利用的显存空间W,根据线性方程组系数矩阵的维度大小,计算求解一个线性方程组所需显存空间W0;统计求解线性方程组额外的辅助数据所需显存空间W1;再根据GPU可利用显存空间W、求解线性方程组额外的辅助数据所需显存空间W1和一个线性方程组所需显存空间W0,计算一次性并行求解的最大线性方程组个数M,其中:

M=(W-W1)/W0。

较佳地,上述方法中,通过一个GPU Kernel一次性应并行求解M个方程直到求解完整个线性方程组的过程如下:

确定计算统一设备架构(CUDA)线程模型,将M个线性方程组设计为一个网格(Grid),其中每一个线性方程组设计为一个线程块(GPU Block),每一个线程块的线程(Thread)数根据系数矩阵的维度变动而动态调整;

确定CUDA并行算法,利用GPU线程并行进行消元操作,一个GPUBlock包括多个线程束(warp),一个线程束负责一列的消元,多个线程束并行消去多列;一个线程束内一个线程负责一列中一行的消元,多个线程实现并行多行消元;

确定CUDA内存模型,所述CUDA内存模型支持全局内存使用、共享内存使用和第一级缓存使用。

较佳地,上述方法中,所述全局内存使用指:一个线程束内的32个线程同时访问全局内存中的连续内存。

较佳地,上述方法中,所述共享内存使用指:将每个块中公共的数据,放入共享内存中。

较佳地,上述方法中,所述第一级缓存使用指:将局部多次访问的数据放置在第一级缓存中。

本发明还公开了一种线性方程组的数据处理装置,包括:

第一单元,根据GPU显存大小及所要计算的线性方程组系数矩阵维度大小确定GPU一次性并行求解的最大线性方程组个数M;

第二单元,判断M是否大于或等于GPU的流处理器个数;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮(北京)电子信息产业有限公司,未经浪潮(北京)电子信息产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210027340.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top