Adaptively accelerating FWM2DA seismic modelling program on multi-core CPU and GPU architectures

Abstract This paper presents work done towards porting of FWM2DA, an open source program, on multi-core CPU and GPU architectures. FWM2DA is a Fortran90 sequential program which performs acoustic wave propagation of single source location for the 2D subsurface earth model using finite difference time domain modelling. We have reproduced this program using C programming language and upgraded its functionality for performing acoustic wave propagation of multiple source locations and allowing different grid spacing in x and z direction for the subsurface earth model. Performance of the upgraded version is improved by implementing inter-node and intra-node parallelization. Inter-node parallelization is implemented using MPI for efficiently utilizing the distributed memory while intra-node parallelization focuses on efficient utilization of underlying architecture’s resources. Outcome of these programs are compared with that of the original FWM2DA program for Sigsbee2a model and found similar thus establishing the correctness of implementation done. The developed programs are tested using two layer subsurface earth model of 5000 X 5000 grid dimension on PARAM Shreshta system having Intel Xeon Gold 6148F Skylake CPU and NVIDIA Tesla V100 GPU. Ported programming models are evaluated for execution time for wavefield propagation of single source location using two layer subsurface earth model. Performance gain of 8 . 6 X for OpenMP, 83 . 22 X for OpenACC and 107 . 77 X for CUDA C implementation are recorded over the sequential C program. The multi-core CPU program is further optimized and overall 29 . 37 X performance is achieved with respect to the sequential C program. Performance of CUDA C program is also improved by making use of shared memory in GPU and 1 . 18 X speedup is recorded with respect to the baseline CUDA C program. The numerical experiments demonstrate the effectiveness and robustness of the developed programs with high scalability and efficiency on multi-core CPU and GPU based HPC system.

[1]  Nuno Roma,et al.  Acceleration of stochastic seismic inversion in OpenCL-based heterogeneous platforms , 2015, Comput. Geosci..

[2]  Mingliang Liu,et al.  Accelerating geostatistical seismic inversion using TensorFlow: A heterogeneous distributed deep learning framework , 2019, Comput. Geosci..

[3]  Kenneth Harold Waters,et al.  Reflection Seismology: A Tool for Energy Resource Exploration , 1978 .

[4]  Jean-Pierre Berenger,et al.  Improved PML for the FDTD solution of wave-structure interaction problems , 1997 .

[5]  Kai Hwang,et al.  Advanced computer architecture - parallelism, scalability, programmability , 1992 .

[6]  Romain Brossier,et al.  Two-dimensional frequency-domain visco-elastic full waveform inversion: Parallel algorithms, optimization and performance , 2011, Comput. Geosci..

[7]  Alan R. Levander,et al.  Fourth-Order Velocity Stress Finite-difference Scheme , 1987 .

[8]  Albert Farrés,et al.  Optimization strategies for geophysics models on manycore systems , 2019, Int. J. High Perform. Comput. Appl..

[9]  G. H. F. Gardner,et al.  FORMATION VELOCITY AND DENSITY—THE DIAGNOSTIC BASICS FOR STRATIGRAPHIC TRAPS , 1974 .

[10]  Amjad Ali,et al.  An Outlook of High Performance Computing Infrastructures for Scientific Computing , 2013, Adv. Comput..

[11]  A. Levander Fourth-order finite-difference P-SV seismograms , 1988 .

[12]  Joakim O. Blanch,et al.  Numerical Modeling of Seismic Wave Propagation: Gridded Two-way Wave-equation Methods , 2012 .

[13]  Tariq Alkhalifah,et al.  A new full waveform inversion method based on shifted correlation of the envelope and its implementation based on OPENCL , 2019, Comput. Geosci..

[14]  M. Kanao Seismic Waves - Research and Analysis , 2012 .

[15]  William H. Press,et al.  Book-Review - Numerical Recipes in Pascal - the Art of Scientific Computing , 1989 .

[16]  Paulius Micikevicius,et al.  3D finite difference computation on GPUs using CUDA , 2009, GPGPU-2.

[17]  Stewart A. Levin,et al.  A pipeline approach for three dimensional time-domain finite-difference multi-parameter waveform inversion on GPUs , 2020, Comput. Geosci..

[18]  Manish Arora The Architecture and Evolution of CPU-GPU Systems for General Purpose Computing , 2012 .

[19]  Dheeraj Bhardwaj,et al.  Marine synthetic seismograms using elastic wave equation , 2000 .

[20]  S. Sherwin,et al.  Finite Difference, Finite Element and Finite Volume Methods for Partial Differential Equations , 2005 .

[21]  Etienne Robein ebook - Seismic Imaging: A Review of the Techniques, their Principles, Merits and Limitations (EET 4) , 2010 .

[22]  Philippe Olivier Alexandre Navaux,et al.  Towards Seismic Wave Modeling on Heterogeneous Many-Core Architectures Using Task-Based Runtime System , 2015, 2015 27th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD).

[23]  Larry Lines,et al.  Seismic Modeling and Imaging With the Complete Wave Equation , 1997 .

[24]  José M. Carcione,et al.  Wave fields in real media : wave propagation in anisotropic, anelastic, porous and electromagnetic media , 2007 .

[25]  Romain Brossier,et al.  Modelling Seismic Wave Propagation for Geophysical Imaging , 2012 .

[26]  Jianlei Zhang,et al.  Elastic full-waveform inversion based on GPU accelerated temporal fourth-order finite-difference approximation , 2020, Comput. Geosci..