System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及石油地球物理勘探地震波数值模拟,特别涉及一种三维有限差分正演模拟方法的参数确定方法、装置和设备。
技术介绍
1、三维波动方程有限差分正演模拟方法是石油地球物理勘探的关键性基础算法,其计算效率对逆时偏移成像、最小二乘偏移成像和全波形反演等波动方程类算法的总体性能起到决定性作用。
2、由于三维波动方程有限差分正演模拟方法具有较高计算/存取比,以及在整个计算范围内极强的算子空间一致性,该算法非常适用于gpu加速计算。相比较于同价位的cpu单线程算法,充分利用gpu加速后的程序往往能提高30-50倍速度;相比较于矢量化并行的cpu代码,也有约5-10倍的加速,因此gpu已经是目前工业生产中最主要的硬件运行环境。
3、虽然基于gpu加速的算法模型已经基本定型,并且在过去的十多年内保持相对稳定,但是每一代gpu的硬件细节都有较大的差异,达到最佳运行效率的关键参数(如tile大小和block大小)随gpu型号不同都有较大差异。同时由于gpu编程使用的cuda语言及硬件的限制,这些关键参数无法在程序运行时动态设定,需要对每一款不同的gpu硬件编写不同的代码,因此增加了程序设计和测试的难度,且在设计和测试过程中出错概率也同时增加。
技术实现思路
1、鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种三维有限差分正演模拟方法的参数确定方法、装置和设备。
2、第一方面,本专利技术实施例提供了一种三维有限差分正演模拟方法
3、构建gpu线程分组结构体模板,以基于所述gpu线程分组结构体模板生成gpu计算的线程分组参数;
4、构建gpu空间分片结构体模板,以基于所述gpu空间分片结构体模板生成gpu计算的空间分片参数;
5、构建有限差分算法结构体模板,以基于所述有限差分算法结构体模板生成进行有限差分计算的差分系数和差分阶数;
6、基于确定的所述gpu计算的线程分组参数、所述gpu计算的空间分片参数、所述差分系数和所述差分阶数,进行三维波动方程有限差分正演模拟。
7、可选的,所述基于所述gpu计算的线程分组参数、所述gpu计算的空间分片参数、所述差分系数和所述差分阶数,进行三维波动方程有限差分正演模拟,可以包括:
8、基于所述gpu计算的线程分组参数的x参数和z参数、所述gpu计算的空间分片参数的x参数和z参数、以及所述差分阶数、所述差分系数中的z参数,获取gpu共享内存的资源;
9、基于所述gpu计算的线程分组参数的y参数、所述gpu计算的空间分片参数的y参数、以及所述差分系数中的z参数,获取gpu寄存器的资源;
10、基于所述gpu共享内存的资源和所述gpu寄存器的资源,将计算数据从全局内存读入对应的共享内存和寄存器,以进行三维波动方程有限差分正演模拟计算。
11、可选的,所述基于所述gpu线程分组结构体模板生成gpu计算的线程分组参数,可以包括:
12、定义所述gpu线程分组结构体模板的参数x、参数y、参数z,以分别表征gpu在空间x、y、z方向对应的线程数;
13、基于gpu硬件参数和/或gpu编程语言分别设定参数x、参数y、参数z的值,以生成gpu计算的线程分组参数。
14、可选的,所述基于所述gpu空间分片结构体模板生成gpu计算的空间分片参数,可以包括:
15、定义所述gpu空间分片结构体模板的参数x、参数y、参数z,以分别表征线程分组在空间x、y、z方向与空间分片的大小比例;
16、基于gpu硬件参数分别设定参数x、参数y、参数z的值,以生成gpu计算的空间分片参数。
17、可选的,所述基于所述有限差分算法结构体模板生成进行有限差分计算的差分系数和差分阶数,可以包括:
18、定义所述有限差分计算的差分系数和差分阶数的参数c0、参数c1、参数c2、参数c3、参数c4、参数c5、参数c6、参数c7,参数o,以分别表征所述差分系数和所述差分阶数;
19、基于gpu硬件参数分别设定参数c0、参数c1、参数c2、参数c3、参数c4、参数c5、参数c6、参数c7,参数o的值,以生成进行有限差分计算的差分系数和差分阶数。
20、可选的,使用有限差分正演模拟三维波动方程通过下述方式表示:
21、所述三维波动方程为:
22、
23、其中,v表示模拟介质的纵波传播速度;p表示模拟介质的纵波振幅;s表示震源项;x、y、z和t分别表示三个空间方向和时间方向,通常x和y对应于空间的两个水平方向,z对应于空间的深度方向,x、y和z相互垂直;
24、通过有限差分正演模拟方法对所述三维波动方程进行数值离散,离散后的方程为:
25、
26、其中,空间坐标和时间坐标分别用δs和δt进行数值离散,δs和δt表示相应的离散步长;下标x、y、z和上标t表示进行计算的空间坐标和时间坐标,ci表示第i个差分算子的差分系数;n表示差分算子的长度。
27、第二方面,本专利技术实施例提供了一种三维有限差分正演模拟方法的参数确定装置,可以包括:
28、第一构建模块,用于构建gpu线程分组结构体模板,以基于所述gpu线程分组结构体模板生成gpu计算的线程分组参数;
29、第二构建模块,用于构建gpu空间分片结构体模板,以基于所述gpu空间分片结构体模板生成gpu计算的空间分片参数;
30、第三构建模块,用于构建有限差分算法结构体模板,以基于所述有限差分算法结构体模板生成进行有限差分计算的差分系数和差分阶数;
31、计算模块,用于基于所述gpu计算的线程分组参数、所述gpu计算的空间分片参数、所述差分系数和所述差分阶数,进行三维波动方程有限差分正演模拟。
32、第三方面,本专利技术实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现第一方面所述的三维有限差分正演模拟方法的参数确定方法。
33、第四方面,本专利技术实施例提供了一种计算机设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的三维有限差分正演模拟方法的参数确定方法。
34、第五方面,本专利技术实施例提供了一种地震数据处理方法,可以包括:使用三维波动方程有限差分正演模拟方法处理所述地震数据;
35、其中,所述有限差分正演模拟方法使用的gpu计算的线程分组参数、gpu计算的空间分片参数、差分系数和差分阶数是根据第一方面所述的三维有限差分正演模拟方法的参数确定方法确定的。
36、本专利技术实施例提供的上述技术方案的有益效果至少包括:
37、本专利技术实施例提供了一种三维有限差分正演模拟方法的参数确定方法、装置和设备,该方法可以包括:构本文档来自技高网...
【技术保护点】
1.一种三维有限差分正演模拟方法的参数确定方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述GPU计算的线程分组参数、所述GPU计算的空间分片参数、所述差分系数和所述差分阶数,进行三维波动方程有限差分正演模拟,包括:
3.根据权利要求1所述的方法,其特征在于,所述基于所述GPU线程分组结构体模板生成GPU计算的线程分组参数,包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述GPU空间分片结构体模板生成GPU计算的空间分片参数,包括:
5.根据权利要求1所述的方法,其特征在于,所述基于所述有限差分算法结构体模板生成进行有限差分计算的差分系数和差分阶数,包括:
6.根据权利要求1~5中任一项所述的方法,其特征在于,使用有限差分正演模拟三维波动方程通过下述方式表示:
7.一种三维有限差分正演模拟方法的参数确定装置,其特征在于,包括:
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~6中任一项所述的三维有限差分正
9.一种计算机设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~6中任一项所述的三维有限差分正演模拟方法的参数确定方法。
10.一种地震数据处理方法,其特征在于,包括:使用三维波动方程有限差分正演模拟方法处理所述地震数据;
...【技术特征摘要】
1.一种三维有限差分正演模拟方法的参数确定方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述gpu计算的线程分组参数、所述gpu计算的空间分片参数、所述差分系数和所述差分阶数,进行三维波动方程有限差分正演模拟,包括:
3.根据权利要求1所述的方法,其特征在于,所述基于所述gpu线程分组结构体模板生成gpu计算的线程分组参数,包括:
4.根据权利要求1所述的方法,其特征在于,所述基于所述gpu空间分片结构体模板生成gpu计算的空间分片参数,包括:
5.根据权利要求1所述的方法,其特征在于,所述基于所述有限差分算法结构体模板生成进行有限差分计算的差分系数和差分阶数,包括:
6.根...
【专利技术属性】
技术研发人员:侯思安,韩永科,王春明,李涛,崔栋,蒋永祥,李文科,崔兴福,
申请(专利权)人:中国石油天然气股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。