基于C++AMP并行加速的三维弹性波波动方程数值模拟
2017-11-01武泗海
武泗海, 赵 虎, 尹 成, 贾 鹏
(1.西南石油大学 a.地球科学与技术学院, b.天然气地质四川省重点实验室,成都 610500;2.川庆钻探地球物理勘探公司 成都 610213)
基于C++AMP并行加速的三维弹性波波动方程数值模拟
武泗海1a,b, 赵 虎1a,b, 尹 成1a,b, 贾 鹏2
(1.西南石油大学 a.地球科学与技术学院, b.天然气地质四川省重点实验室,成都 610500;2.川庆钻探地球物理勘探公司 成都 610213)
在地震勘探方面,地震数值模拟技术在地球物理反演及观测系统设计领域有着广泛地应用。这里主要提出并实现了利用C++AMP并行加速内存/计算密集型的三维弹性波的正演模拟,使用C++AMP编写的代码可以有效地在图形处理器(GPU)等支持数据并行的硬件上运行。在重点研究C++AMP三维弹性波数值模拟的并行算法实现的基础上,结合CPU串行及CPU多核并行进行加速对比,三维盐丘实验的结果说明,利用GPU的强大并行计算能力的C++AMP,可以极大地提高数值模拟的效率。此外,C++AMP在Windows平台具有良好的可移植性,同时兼容NVIDA和AMD的设备,极大地提升了开发效率。
C++AMP; GPU并行计算; 三维弹性波; 正演
0 引言
波动方程数值模拟技术是研究地震波传播特征的重要工具之一,同时也是地震反演的基础,在研究复杂地区地震资料采集、处理和解释等领域应用广泛。Alterman[1]将有限差分法首次应用于地震波模拟; Vireux[2]通过将速度和应力分量置于空间格点和半格点的方式提高了空间微分的精度,并完成了对弹性介质P-SV波和SH波的正演工作。实践证明,对于三维复杂构造,地质体和岩性的地震模拟而言,交错网格差分法以其综合性能最好,是目前实用性最好的方法。……
