DOI QR코드

DOI QR Code

그래픽 프로세서를 이용한 탄성파 수치모사의 계산속도 향상

Acceleration of computation speed for elastic wave simulation using a Graphic Processing Unit

  • Nakata, Norimitsu (Department of Urban Management, Faculty of Engineering, Kyoto University) ;
  • Tsuji, Takeshi (Department of Urban Management, Faculty of Engineering, Kyoto University) ;
  • Matsuoka, Toshifumi (Department of Urban Management, Faculty of Engineering, Kyoto University)
  • 투고 : 2010.08.16
  • 심사 : 2010.11.04
  • 발행 : 2011.02.28

초록

탐사 지구물리학에서 수치 모사는 지하매질에서의 탄성파 전파 현상을 이해하는데 중요한 통찰력을 제공한다. 탄성파 모사는 음향파 근사에 의한 수치 모사보다 계산시간이 많이 소요되지만 전단응력 성분을 포함하여 보다 현실적인 파동의 모사를 가능하게 한다. 그러므로 탄성파 모사는 탄성체의 반응을 탐사하는데 적합하다고 할 수 있다. 계산 시간이 길다는 단점을 극복하기 위해 본 논문에서는 그래픽 프로세서(GPU)를 이용하여 탄성파 수치 모사 시간을 단축하고자 하였다. GPU는 많은 수의 프로세서와 광대역 메모리를 갖고 있기 때문에 병렬화된 계산 아카텍쳐에서 사용할 수 있는 장점이 있다. 본 연구에서 사용한 GPU 하드웨어는 NVIDIA Tesla C1060으로 240개의 프로세서로 구성되어 있으며 102 GB/s의 메모리 대역폭을 갖고 있다. NVIDIA에서 개발된 병렬계산 아카텍쳐인 CUDA를 사용할 수 있음에도 불구하고 계산효율을 상당히 향상시키기 위해서는 GPU 장치의 여러 가지 다양한 메모리의 사용과 계산 순서를 최적화해야만 한다. 본 연구에서는 GPU 시스템에서 시간영역 유한차분법을 이용하여 2차원과 3차원 탄성과 전파를 수치 모사하였다. 파동전파 모사에 가장 널리 사용되는 유한차분법 중의 하나인 엇갈린 격자기법을 채택하였다. 엇갈린 격자법은 지구물리학 분야에서 수치 모델링을 위해 사용하기에 충분한 정확도를 갖고 있는 것으로 알려져 있다. 본 논문에서 제안한 모델링기법은 자료 접근 시간을 단축하기 위해 GPU 장치를 메모리 사용을 최적화하여 가능한 더 빠른 메모리를 사용한다. 이점이 GPU를 이용한 계산의 핵심 요소이다. 하나의 GPU 장치를 사용하고 메모리 사용을 최적화함으로써 단일 CPU를 이용할 경우보다 2차원 모사에서는 14배 이상, 3차원에서는 6배 이상 계산시간을 단축할 수 있었다. 세 개의 GPU를 사용한 경우에는 3차원 모사에서 계산효율을 10배 향상시킬 수 있었다.

Numerical simulation in exploration geophysics provides important insights into subsurface wave propagation phenomena. Although elastic wave simulations take longer to compute than acoustic simulations, an elastic simulator can construct more realistic wavefields including shear components. Therefore, it is suitable for exploration of the responses of elastic bodies. To overcome the long duration of the calculations, we use a Graphic Processing Unit (GPU) to accelerate the elastic wave simulation. Because a GPU has many processors and a wide memory bandwidth, we can use it in a parallelised computing architecture. The GPU board used in this study is an NVIDIA Tesla C1060, which has 240 processors and a 102 GB/s memory bandwidth. Despite the availability of a parallel computing architecture (CUDA), developed by NVIDIA, we must optimise the usage of the different types of memory on the GPU device, and the sequence of calculations, to obtain a significant speedup of the computation. In this study, we simulate two- (2D) and threedimensional (3D) elastic wave propagation using the Finite-Difference Time-Domain (FDTD) method on GPUs. In the wave propagation simulation, we adopt the staggered-grid method, which is one of the conventional FD schemes, since this method can achieve sufficient accuracy for use in numerical modelling in geophysics. Our simulator optimises the usage of memory on the GPU device to reduce data access times, and uses faster memory as much as possible. This is a key factor in GPU computing. By using one GPU device and optimising its memory usage, we improved the computation time by more than 14 times in the 2D simulation, and over six times in the 3D simulation, compared with one CPU. Furthermore, by using three GPUs, we succeeded in accelerating the 3D simulation 10 times.

키워드

참고문헌

  1. Abdelkhalek, R., Calandra, H., Coulaud, O., Latu, G., and Roman, J., 2009, Fast seismic modeling and reverse time migration on a GPU cluster: Proceedings of the 2009 High Performance Computing & Simulation – HPCS09, 36-43.
  2. Chandra, R., Menon, R., Dagum, L., Kohr, D., Maydan, D., and McDonald, J., 2000, Parallel programming in OpenMP: Morgan Kaufmann.
  3. Cerjan, C., Kosloff, D., Kosloff, R., and Reshef, M., 1985, A nonreflecting boundary condition for discrete acoustic and elastic wave equations: Geophysics, 50, 705-708. doi:10.1190/1.1441945
  4. Cerveny, V., 2001, Seismic ray theory: Cambridge University Press.
  5. Graves, R. W., 1996, Simulating seismic wave propagation in 3D elastic media using staggered-grid finite differences: Bulletin of the Seismological Society of America, 86, 1091-1106.
  6. Juhlin, C., 1995, Imaging of fracture zones in the Finnsjon area, central Sweden, using the seismic reflection method: Geophysics, 60, 66-75. doi:10.1190/1.1443764
  7. Levander, A. R., 1988, Fourth-order Finite-Difference P-SV seismograms: Geophysics, 53, 1425-1436. doi:10.1190/1.1442422
  8. Liu, Y., Liu, X., and Wu, E., 2004, Real-time 3D fluid simulation on GPU with complex obstacles: Proceedings of the 12th Pacific Conference on Computer Graphics and Applications – PG04, 247-256.
  9. Micikevicius, P., 2009, 3D Finite Difference computation on GPUs using CUDA: GPGPU2.
  10. Moussa, N. W., 2009, Seismic imaging using GPGPU accelerated reverse time migration CS315A final project report: Technical Document, Stanford University
  11. Nickolls, J., and Dally, W. J., 2010, The GPU computing era: IEEE Micro, 30, 56-69. doi:10.1109/MM.2010.41
  12. NVIDIA CUDA, 2010, Programming Guide Version 3.0.
  13. Nyland, L., Harris, M., and Prins, J., 2007, Fast N-body simulation with CUDAin Nguyen, H. (ed.),GPUGems 3: Addison-Wesley, pp. 677-695.
  14. Owens, J. D., Housto, M., Luebke, D., Green, S., Stone, J. E., and Phillips, J. C., 2008, GPU computing: Proceedings of the IEEE, 96, 879-899. doi:10.1109/JPROC.2008.917757
  15. Saito, M., 1993, Branch line contribution in Lamb's problem: Butsuri Tansa, 46, 372-380.
  16. Stone, J. E., Philips, J. C., Freddolino, P. L., Hardy, D. J., Trabuco, L. G., and Schulten, K., 2007, Accelerating molecular modelling applications with graphics processors: Journal of Computational Chemistry, 28, 2618–2640. doi:10.1002/jcc.20829
  17. Takada, N., Takizawa, T., Gong, Z., Masuda, N., Ito, T., and Shimobaba, T., 2008, Fast computation of 2-D Finite-Difference Time-Domain method using Graphics Processing Unit with unified shader: IEICE, J91-D, 2562-2564.
  18. Virieux, J., 1986, P-SV wave propagation in heterogeneous media: velocitystress finite difference method: Geophysics, 51, 889-901. doi:10.1190/ 1.1442147