Vol. 8, №2, 2016


1Andrey M. Ivanov, 1Nikolay I. Khokhlov, 1,2Igor B. Petrov

1Moscow Institute of Physics and Technology, http://mipt.ru
Dolgoprudny, 141701 Moscow region, Russian Federation
2Scientific Research Institute of System Analysis, Russian Academy of Sciences, https://www.niisi.ru
117218 Moscow, Russian Federation
ip-e@mail.ru, k_h@inbox.ru, petrov@mipt.ru

Received 25.11.2016
Abstract. The paper deals with the problem of modeling seismic wave propagation in solid deformable bodies. The state of these bodies can be represented as a solution of hyperbolic system of equations. Grid-characteristic method is used to find the solution. This formulation of physical problem is used to demonstrate the use of technologies of parallel programming for shared memory systems using OpenMP and POSIX Threads technology. To achieve high performance, vector SSE and AVX instructions of CPU is used. In addition, GPU implementation is written using CUDA and OpenCL technologies. Results of multi-GPU parallelisation is also obtained. Use of NVIDIA GPUDirect technology that allows GPUs to make data exchanges directly through the PCI Express bus is considered. The paper demonstrates achieved acceleration and percentage of the theoretically possible performance. The paper demonstrates achieved acceleration and percentage of the theoretically possible performance. The paper describes the optimizations, which allowed us to achieve the obtained acceleration results. The study was financially supported by RFBR as part of a research project number 15-07-01931 A.

Keywords: mathematical modeling, parallel programming, grid-characteristic method, shared memory, seismic, vectorization, GPU, CUDA, OpenCL

UDC 519.633

Bibliography – 20 references

RENSIT, 2016, 8(2):185-195 DOI: 10.17725/rensit.2016.08.185
  • Caserta A, Ruggiero V, Lanucara P. Numerical modelling of dynamical interaction between seismic radiation and near-surface geological structures: a parallel approach. Computers and geosciences, 2002, 28, 9:1069-1077.
  • Guo X, Lange M, Gorman G, Mitchell L, Weiland M. Developing a scalable hybrid MPI/OpenMP unstructured finite element model. Computers and Fluids, 2015, 110:227-234.
  • Micikevicius P. 3D finite difference computation on GPUs using CUDA. Proceedings of 2nd workshop on general purpose processing on graphics processing units. ACM, 2009:79-84.
  • Nickolls J, Buck I, Garland M, Skadron K. Scalable parallel programming with CUDA. Queue, 2008, 6, 2:40-53.
  • Abdelkhalek R, Calendra H, Coulaud O, Latu G, Roman J. Fast seismic modeling and reverse time migration on a GPU cluster. HPCS’09 Intern. Conf. on High Performance Computing and Simulation, IEEE, 2009:36-43.
  • Foltinek D, Eaton D, Mahovsky J, Moghaddam P, McGarry R. Industrial-scale reverse time migration on GPU hardware. 2009 SEG Annual Meeting - Society of Exploration Geophysicists. 2009.
  • Bohlen T. Parallel 3-D viscoelastic finite difference seismic modelling. Computers and Geosciences, 2002, 28, 8:887-899.
  • Gropp W, Lusk E, Doss N, Skjellum A. A high-performance, portable implementation of the MPI message passing interface standard. Parallel computing, 1996, 22, 6:789-828.
  • Martin R, Komatitsch D, Blitz C, Le Goff N. Simulation of seismic wave propagation in an asteroid based upon an unstructured MPI spectral-element method: blocking and non-blocking communication strategies. Intern. Conf. on High Performance Computing for Computational Science. Springer, Berlin Heidelberg, 2008:350-363.
  • Rostrup S, De Sterck H. Parallel hyperbolic PDE simulation on clusters: Cell versus GPU. Computer Physics Communications, 2010, 181, 12:164-179.
  • Aochi H, Dupros F. MPI-OpenMP hybrid simulations using boundary integral equation and finite difference methods for earthquake dynamics and wave propagation: Application to the 2007 Niigata Chuetsu-Oki earthquake. Procedia Computer Science, 2011, 4:1496-1505.
  • Vanderbauwhede W, Benkrid K. High-performance computing using FPGAs. New York, Springer, 2013.
  • Krueger J, Donofrio D, Shalf J, Mohiyuddin M, Williams S, Oliker L, Pfreundt FJ. Hardware/software co-design for energy-efficient seismic modeling. Proceedings of 2011 Intern. Conf. for High Performance Computing, Networking, Storage and Analysis. ACM, 2011, 73 p.
  • Petrov IB, Favorskaya AV, Sannikov AV, Kvasov IE. Grid-characteristic method using high-order interpolation on tetrahedral hierarchical meshes with a multiple time step. Mathematical Models and Computer Simulations, 2013, 5, 5:409-415.
  • Golubev VI, Petrov IB, Khokhlov NI. Numerical simulation of seismic activity by the grid-characteristic method. Computational Mathematics and Mathematical Physics, 2013, 53, 10:1523-1533.
  • Beklemysheva KA, Petrov IB, Favorskaya AV. Numerical simulation of processes in solid deformable media in the presence of dynamic contacts using the grid-characteristic method. Mathematical Models and Computer Simulations, 2014, 6, 3:294-304.
  • Butenhof DR. Programming with POSIX threads. Addison-Wesley Professional, 1997, 400 p.
  • Munshi A. The opencl specification. 2009 IEEE Hot Chips 21 Symposium (HCS). IEEE, 2009, 314 p.
  • LeVeque RJ. Finite volume methods for hyperbolic problems. Cambridge university press, 2002, 558 p.
  • Carcione JM, Herman GC, ten Kroode APE. Review Article: Seismic modeling. Geophysics, 2002, 67, 4:1304-1325.

Full-text electronic version of this article - web site http://en.rensit.ru/vypuski/article/190/8(2)185-195e.pdf