Revisiting finite difference and spectral migration methods on diverse parallel architectures
With a continual request for faster speed and better resolution, seismic migration continues to be one of the most computationally demanding geoscience applications. The recent emergence of new high performance computing (HPC) architectures, such as multi-core CPUs, Graphic Processing Units (GPUs), and Field Programmable Gate Arrays (FPGAs), offers significant speed up if the method can be effectively mapped. For high-end finite difference and spectral migration methods, the differencing stencils and FFTs are usually the dominant cost. In our work, we parallelize and optimize the stencil and FFT kernels on multi-core CPUs, GPUs, and FPGAs. We make an extensive comparison between the finite difference method and the spectral method on both numerical accuracy and parallel computation performance. Our experiments demonstrate that, although spectral methods eliminate the spatial dispersion errors and can lead to a reduced computational complexity, finite difference migrations are able to achieve the same accuracy with both a better performance and a better scalability in many cases because of the more regular computation and memory access patterns. The only exception is spectral methods based on 2D FFTs, which continue to scale with the parallel computation capacity of modern architectures. The technological trends indicate that these findings will continue.
finite difference spectral seismic migration high performance computing fft