论文部分内容阅读
波动方程数值模拟在油气勘探中发挥着重要作用,如何提高它的计算效率一直是人们研究的课题.目前多核计算机已非常普及,而现有程序基本都是采用MPI实现并行计算的.这种进程级粒度的并行计算方式在PC-Cluster之类的分布式计算机上效果很好,可是在单个节点上却受内存限制,往往只能使用少数几个甚至单个计算核心,多核处理器的效能难以得到有效发挥.本文基于MATLAB科学计算平台构建波动方程数值模拟算法,将占主要计算量的波场外推式计算分解为矩阵-向量乘法、向量对应元素相乘或相减运算,通过MEX文件机制,在MATLAB中引入了OpenMP多线程并行计算,解决了MPI进程级并行在内存使用受限的情况下,多核利用效率低的问题.在四核计算机上测试表明,右端项计算平均加速3.37倍,解对角线方程平均加速1.66倍,波场外推式的计算平均加速3.11倍,使正演计算的总体计算速度提高了近3倍,有效提高了计算效率.
Wave equation numerical simulation plays an important role in oil and gas exploration, how to improve its computational efficiency has been a subject of research .Currently multi-core computers have been very popular, and the existing procedures are basically used MPI parallel computing .This process Parallel computing at the level of granularity works well on distributed computers such as PC-Cluster, but memory limitations exist on a single node, often using only a few or even a single compute core, and the performance of multicore processors is hard to come by And effectively play.Based on the mathematic calculation platform of MATLAB, a wave equation numerical simulation algorithm is constructed, and the wavefield extrapolation calculation which accounts for the main computational amount is decomposed into matrix-vector multiplication, vector corresponding element multiplication or subtraction operation, through the MEX file mechanism, In MATLAB, OpenMP multithreaded parallel computing is introduced to solve the problem of low utilization efficiency of multi-core under the circumstance of MPI process-level parallelism in memory.Experiments on quad-core computers show that the computation of the right end term accelerates on average 3.37 times, The diagonal equation accelerates an average of 1.66 times and the wavefield extrapolation accelerates an average of 3.11 times, making the forward calculation of the overall calculation Of increased nearly 3-fold, improve the computational efficiency.