Optimized OpenCL implementation of the Elastodynamic Finite Integration Technique for viscoelastic media

被引:24
作者
Molero-Armenta, M. [1 ]
Iturraran-Viveros, Ursula [2 ]
Aparicio, S. [1 ]
Hernandez, M. G. [1 ]
机构
[1] CSIC, Inst Tecnol Fis & Informac Leonardo Torres Queved, Madrid, Spain
[2] Univ Nacl Autonoma Mexico, Fac Ciencias, Mexico City 04510, DF, Mexico
关键词
EFIT; Kelvin-Voigt; GPUs; PyOpenCL; OpenCL; ULTRASONIC WAVE-PROPAGATION; ANISOTROPIC MEDIA; EFIT; SCATTERING; SIMULATION; EQUATIONS; VELOCITY;
D O I
10.1016/j.cpc.2014.05.016
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
Development of parallel codes that are both scalable and portable for different processor architectures is a challenging task. To overcome this limitation we investigate the acceleration of the Elastodynamic Finite Integration Technique (EFIT) to model 2-D wave propagation in viscoelastic media by using modern parallel computing devices (PCDs), such as multi-core CPUs (central processing units) and GPUs (graphics processing units). For that purpose we choose the industry open standard Open Computing Language (OpenCL) and an open-source toolkit called PyOpenCL. The implementation is platform independent and can be used on AMD or NVIDIA GPUs as well as classical multi-core CPUs. The code is based on the Kelvin Voigt mechanical model which has the gain of not requiring additional field variables. OpenCL performance can be in principle, improved once one can eliminate global memory access latency by using local memory. Our main contribution is the implementation of local memory and an analysis of performance of the local versus the global memory using eight different computing devices (including Kepler, one of the fastest and most efficient high performance computing technology) with various operating systems. The full implementation of the code is included. Program summary Program title: EFIT2D-PyOpenCL Catalogue identifier: AETF_v1_0 Program summary URL: http://cpc.cs.qub.ac.uk/summaries/AETF_v1_0.html Program obtainable from: CPC Program Library, Queen's University, Belfast, N. Ireland Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html No. of lines in distributed program, including test data, etc.: 38079 No. of bytes in distributed program, including test data, etc.: 2949059 Distribution format: tar.gz Programming language: Python. Computer: Computers having GPU or Multicore CPU with OpenCL drivers. Operating system: Multi-platform. Has the code been vectorized or parallelized?: Yes. RAM: 2 Gb Classification: 6.5. External routines: Numpy, scipy, matplotlib, glumpy, pyopencl Nature of problem: Development of parallel codes that are both scalable and portable for different processor architectures is a challenging task. To overcome this limitation we investigate the acceleration of the Elastodynamic Finite Integration Technique (EFIT) to model 2-D wave propagation in viscoelastic media by using modern parallel computing devices (PCDs), such as multi-core CPUs (central processing units) and GPUs (graphics processing units). Solution method: We choose the industry open standard Open Computing Language (OpenCL) and an open-source toolkit called PyOpenCL. The implementation is platform independent and can be used on AMD or NVIDIA GPUs as well as classical multi-core CPUs. The code is based on the Kelvin-Voigt mechanical model which has the gain of not requiring additional field variables. OpenCL performance can be in principle, improved once one can eliminate global memory access latency by using local memory. Our main contribution is the implementation of local memory and an analysis of performance of the local versus the global memory using eight different computing devices (including Kepler, one of the fastest and most efficient high performance computing technology) with various operating systems. Restrictions: Wave propagation simulation only in 2D Scenarios, OpenCL drivers needed. Running time: This code can process wave propagation simulations within a few minutes in a typical current computer with GPUs or multicore CPUs. (C) 2014 Elsevier B.V. All rights reserved.
引用
收藏
页码:2683 / 2696
页数:14
相关论文
共 25 条
[1]  
Barkhatov V.A., 2009, RUSS J NONDESTRUCT, V45, P58
[2]   Parallel 3-D viscoelastic finite difference seismic modelling [J].
Bohlen, T .
COMPUTERS & GEOSCIENCES, 2002, 28 (08) :887-899
[3]   Simulation of acoustic scattering from an aluminum cylinder near a rough interface using the elastodynamic finite integration technique [J].
Calvo, D. C. ;
Rudd, K. E. ;
Zampolli, M. ;
Sanders, W. M. ;
Bibee, L. D. .
WAVE MOTION, 2010, 47 (08) :616-634
[4]  
Carcione J., 2007, WAVE PROPAGATION ANI
[5]   3-D wave simulation in anelastic media using the Kelvin-Voigt constitutive equation [J].
Carcione, JM ;
Poletto, F ;
Gei, D .
JOURNAL OF COMPUTATIONAL PHYSICS, 2004, 196 (01) :282-297
[6]   CONSTITUTIVE MODEL AND WAVE-EQUATIONS FOR LINEAR, VISCOELASTIC, ANISOTROPIC MEDIA [J].
CARCIONE, JM .
GEOPHYSICS, 1995, 60 (02) :537-548
[7]   SEISMIC MODELING IN VISCOELASTIC MEDIA [J].
CARCIONE, JM .
GEOPHYSICS, 1993, 58 (01) :110-120
[8]   A NONREFLECTING BOUNDARY-CONDITION FOR DISCRETE ACOUSTIC AND ELASTIC WAVE-EQUATIONS [J].
CERJAN, C ;
KOSLOFF, D ;
KOSLOFF, R ;
RESHEF, M .
GEOPHYSICS, 1985, 50 (04) :705-708
[9]   NUMERICAL MODELING OF ELASTIC-WAVE PROPAGATION AND SCATTERING WITH EFIT - ELASTODYNAMIC FINITE INTEGRATION TECHNIQUE [J].
FELLINGER, P ;
MARKLEIN, R ;
LANGENBERG, KJ ;
KLAHOLZ, S .
WAVE MOTION, 1995, 21 (01) :47-66
[10]   Simulation of sonic waves along a borehole in a heterogeneous formation: Accelerating 2.5-D finite differences using [Py]OpenCL [J].
Iturraran-Viveros, Ursula y ;
Molero, Miguel .
COMPUTERS & GEOSCIENCES, 2013, 56 :161-169