Abstract:
Numerical simulation of wave equation played an important role in oil and gas exploration,and engineers always looked forward to seeking out more efficientalgorithms for it. Nowadays, multi-core computers had been very popular,and the most existing procedures were using MPI parallel programming. This process level granularity parallel calculation results in distributed computer such as PC-cluster is very good. However, on a single node, often only few or even a single core could be used by memory constraints. The multi-core processor's performance is difficult to effectively play. In this paper, a method of wave equation thread level parallel computation for MATLAB on multi-core computer was presented. According to the predominantcomputation was wavefieldextrapolation formula, and it was composed of matrix-vector multiplication, vector-vector subtraction and vector-vector element-by-element multiplication, the wavefieldextrapolation formula was rewrited from MATLAB m-version to OpenMP multithread C mex-version. This resulted higher performance than MPI parallelism with limited memory. Numerical experiment indicated that this parallel algorithm could improve the computational efficiency significantly. On a quad-core computer, the speedup of solutiondiagonal equation was nearly1.66, the speedup of calculation right-hand term was up to 3.37. As a result, the speedup of wavefield extrapolationformula was up to 3.11, and theentire forward modeling accelerated nearly to 3 times.