Parallelizing a 3D finite difference MT inversion algorithm on a multicore PC using OpenMP

Technology for imaging geophysical properties of the Earth’s interior is increasingly demanding of computing resources as data set sizes increase and the fully three-dimensional (3D) nature of the problem is appreciated. One approach has been to develop distributed computing clusters (e.g., Hargrove et al., 2001), although these can require a substantial investment and facility footprint. An attractive alternative is to exploit multicore PC designs to which single-processor personal computers (PC’s) have evolved; this presents the prospect of parallel computing within an affordable, single-box, format. Here, we describe modifications made to a 3D magnetotelluric (MT) inversion program to allow it to run efficiently on a multicore desktop PC. Parallelization is accomplished using OpenMP, an easy to use application program interface developed for shared-memory platforms, such as multicore PC’s. Autoparallelization, while attractive, is unlikely to yield improvements as large as can be obtained by restructuring and explicit parallelization. We demonstrate that excellent scalability with increasing core number is achieved on important parts of the inverse problem, while particular processor architecture limits efficiency in other parts of the problem.

[1]  Stephen H. Schneider,et al.  Climate modeling , 1987 .

[2]  A. Morelli Inverse Problem Theory , 2010 .

[3]  James Demmel,et al.  Performance Optimizations and Bounds for Sparse Matrix-Vector Multiply , 2002, ACM/IEEE SC 2002 Conference (SC'02).

[4]  Yutaka Sasaki,et al.  Three-dimensional inversion of static-shifted magnetotelluric data , 2004 .

[5]  Gene H. Golub,et al.  Matrix computations (3rd ed.) , 1996 .

[6]  F. Simpson,et al.  Practical Magnetotellurics: References , 2005 .

[7]  Luc Giraud,et al.  A Parallel Distributed Solver for Large Dense Symmetric Systems: Applications to Geodesy and Electromagnetism Problems , 2005, Int. J. High Perform. Comput. Appl..

[8]  Albert Tarantola,et al.  Inverse problem theory - and methods for model parameter estimation , 2004 .

[9]  J. T. Smith Conservative modeling of 3-D electromagnetic fields, Part II: Biconjugate gradient solution and an accelerator , 1996 .

[10]  Dmitry B. Avdeev,et al.  Three-Dimensional Electromagnetic Modelling and Inversion from Theory to Application , 2005 .

[11]  K. Vozoff,et al.  8. The Magnetotelluric Method , 1991 .

[12]  Michael Lang,et al.  A Performance Evaluation of the Nehalem Quad-Core Processor for Scientific Computing , 2008, Parallel Process. Lett..

[13]  Gene H. Golub,et al.  Matrix computations , 1983 .

[14]  Julien Langou,et al.  The Impact of Multicore on Math Software , 2006, PARA.

[15]  F M Hoffman,et al.  The do it yourself supercomputer. , 2001, Scientific American.