Performance and Programmability Comparison Between OpenMP and MPI Implementations of a Molecular Modeling Application

Important components of molecular modeling applications are estimation and minimization of the internal energy of a molecule. For macromolecules such as proteins and amino acids, energy estimation is performed using empirical equations known as force fields. Over the past several decades, much effort has been directed towards improving the accuracy of these equations, and the resulting increased accuracy has come at the expense of greater computational complexity. For example, the interactions between a protein and surrounding water molecules have been modeled with improved accuracy using the generalized Born solvation model, which increases the computational complexity to O(n3). Fortunately, many force-field calculations are amenable to parallel execution. This paper describes the steps that were required to transform the Born calculation from a serial program into a parallel program suitable for parallel execution in both the OpenMP and MPI environments. Measurements of the parallel performance on a symmetric multiprocessor reveal that the Born calculation scales well for up to 144 processors, and that programmability and performance are better for the OpenMP implementation than for the MPI implementation.

[1]  William Gropp,et al.  Reproducible Measurements of MPI Performance Characteristics , 1999, PVM/MPI.

[2]  Anthony Skjellum,et al.  Using MPI: portable parallel programming with the message-passing interface, 2nd Edition , 1999, Scientific and engineering computation series.

[3]  David A. Case,et al.  Second derivatives in generalized Born theory , 2006, J. Comput. Chem..

[4]  Peter A. Kollman,et al.  AMBER: Assisted model building with energy refinement. A general program for modeling molecules and their interactions , 1981 .

[5]  Rohit Chandra,et al.  Parallel programming in openMP , 2000 .

[6]  Jack Dongarra,et al.  ScaLAPACK Users' Guide , 1987 .

[7]  P. Beroza,et al.  Application of a pairwise generalized Born model to proteins and nucleic acids: inclusion of salt effects , 1999 .

[8]  Glenn R. Luecke,et al.  Scalability and performance of OpenMP and MPI on a 128‐processor SGI Origin 2000 , 2001, Concurr. Comput. Pract. Exp..

[9]  W. C. Still,et al.  Semianalytical treatment of solvation for molecular mechanics and dynamics , 1990 .

[10]  D. Case,et al.  Generalized Born Models of Macromolecular Solvation Effects , 2001 .

[11]  Brian Armstrong,et al.  Quantifying Differences between OpenMP and MPI Using a Large-Scale Application Suite , 2000, ISHPC.

[12]  H. Jin,et al.  - 3-The OpenMP Implementation of NAS Parallel Benchmarks and Its Performance , 1999 .

[13]  Franck Cappello,et al.  Performance comparison of MPI and OpenMP on shared memory multiprocessors , 2006, Concurr. Comput. Pract. Exp..

[14]  Michael Feig,et al.  Implicit solvation based on generalized Born theory in different dielectric environments. , 2004, The Journal of chemical physics.

[15]  Anthony Skjellum,et al.  Using MPI - portable parallel programming with the message-parsing interface , 1994 .

[16]  Rajat P. Garg,et al.  Techniques for Optimizing Applications: High Performance Computing , 2001 .

[17]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[18]  M. Hartmann Molecular mechanics. Von ULRICH BURKERT und NORMAN L. ALLINGER. ACS Monograph 177. Washington: American Chemical Society 1982. 430 S., US $ 77.95 , 1984 .

[19]  D. B. Davis,et al.  Sun Microsystems Inc. , 1993 .

[20]  Gregory D. Hawkins,et al.  Parametrized Models of Aqueous Free Energies of Solvation Based on Pairwise Descreening of Solute Atomic Charges from a Dielectric Medium , 1996 .