Auto-Tuning of 3D Acoustic Wave Propagation in Shared Memory Environments
T. Barros, J. B. Fernandes, I. A. Souza-de-Assis and S. Xavier de Souza
Event name: First EAGE Workshop on High Performance Computing for Upstream in Latin America
Session: High Performance Computing
Publication date: 21 September 2018
Info: Extended abstract, PDF ( 569.96Kb )
Price: € 20
Finite difference methods (FDM) are largely used for modeling seismic data with the acoustic wave equation. These methods are computationally intensive, demanding the use of techniques that allow the obtainment of complex results in affordable time. This gives rise to the use parallelization techniques, which can significantly decrease the algorithm execution time. In shared memory environments, the 3D acoustic wave equation might be parallel computed in chunks of data, where the solution is concurrently evaluated, for the different data chunks. The determination of these chunk sizes, also known as workload distribution, is a crucial aspect in this type of approach. In this work we focus in optimize the workload distribution of a 3D FDM algorithm, parallelized with OpenMP, in a shared memory environment. We propose an auto-tuning algorithm that makes use of the global optimization strategy Coupled Simulated Annealing (CSA) to find the chunk size which minimizes the execution time of propagating the seismic acoustic wave equation. We illustrate, in numerical experiments, that the optimal chunk size varies according to the architecture, compiler and number of threads used. We also illustrate, in our tests, that the use of the CSA method is quite promising for the obtainment of the optimal chunk size for these different computational setups, resulting in significant time savings.