[发明专利]基于GPU+CPU异构平台的三维大地电磁反演并行方法在审
申请号: | 201710455362.3 | 申请日: | 2017-06-16 |
公开(公告)号: | CN107273333A | 公开(公告)日: | 2017-10-20 |
发明(设计)人: | 阮帅 | 申请(专利权)人: | 恒达新创(北京)地球物理技术有限公司 |
主分类号: | G06F17/12 | 分类号: | G06F17/12;G06F9/50 |
代理公司: | 北京泛华伟业知识产权代理有限公司11280 | 代理人: | 王勇,李科 |
地址: | 100020 北京市朝阳区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 gpu cpu 平台 三维 大地 电磁 反演 并行 方法 | ||
1.一种基于GPU+CPU异构平台的三维大地电磁反演并行方法,包括:
步骤1:基于网格剖分和单元电阻率值形成三维大地电磁的正演方程组;
步骤2:获取求解所述正演方程组所需的存储空间大小;
步骤3:基于所述存储空间大小获取GPU最大并行线程数Ng和CPU最大并行线程数Nc;
步骤4:将求解所述正演方程组的并行计算任务分配给空闲的GPU线程和CPU线程执行。
2.根据权利要求1所述的方法,其中,在步骤4中,计算任务的分配顺序是,优先分配空闲的GPU线程,若GPU线程均不空闲则分配给CPU线程。
3.根据权利要求1所述的方法,其中,所述正演方程组表示为:
其中,xx、xy和xz为求解向量,bx、by和bz分别是各方向电场对应的右端项子向量,为系数矩阵。
4.根据权利要求3所述的方法,其中,以按行压缩的稀疏矩阵方式将所述系数矩阵存储为行指针数组、列下标数组和非零数值数组,所述列下标数组用于表示非零元素的列数,所述行指针数组用于表示该行的起始非零元素在列下标数组中的位置,所述非零数值数组表示所述系数矩阵中的非零元素。
5.根据权利要求4所述的方法,其中,使用一组公共行指针和列下标数组来存储所有并行线程中的系数矩阵的所述行指针数组和所述列下标数组。
6.根据权利要求1所述的方法,其中,采用预条件稳定双共轭梯度法求解每个并行线程的三维大地电磁正演方程组。
7.根据权利要求6所述的方法,其中,对于每个并行线程,需要的所述存储空间包括临时向量的内存需求、系数矩阵的内存需求和系数矩阵的预条件分解阵的内存需求。
8.根据权利要求7所述的方法,其中,所述系数矩阵的内存需求字节数为:MA=(N+1+NNZ_A)*sizeof(int)+NNZ_A*sizeof(double)*2,所述系数矩阵的预条件分解阵的内存需求字节数为:MP=(N+1+NNZ_P)*sizeof(int)+NNZ_P*sizeof(double)*2,所述临时向量的内存需求字节数为:MV=9*N*sizeof(double)*2,其中,N表示系数矩阵的行数,NNZ_A表示系数矩阵的非0元素个数,NNZ_P表示预条件分解阵的非0元素个数,sizeof(int)表示整形变量需要的字节数,sizeof(double)表示双精度浮点型变量需要的字节数。
9.根据权利要求1至8中任一项所述的方法,其中,所述GPU最大并行线程数为:Ng=0.8*MG/M,Ng表述GPU最大并行线程数,MG表示GPU支持的最大全局内存大小,M=MA+MP+MV表示GPU单线程所需的存储空间大小。
10.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现根据权利要求1至9中任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于恒达新创(北京)地球物理技术有限公司,未经恒达新创(北京)地球物理技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710455362.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种最佳入炉煤热值测算系统
- 下一篇:移动台风边界层三分量风速解析方法