Multilevel Parallelism in Computational Chemistry using Common Component Architecture and Global Arrays

The development of complex scientific applications for high-end systems is a challenging task. Addressing complexity of the involved software and algorithms is becoming increasingly difficult and requires appropriate software engineering approaches to address interoperability, maintenance, and software composition challenges. At the same time, the requirements for performance and scalability to thousand processor configurations magnifies the level of difficulties facing the scientific programmer due to the variable levels of parallelism available in different algorithms or functional modules of the application. This paper demonstrates how the Common Component Architecture (CCA) and Global Arrays (GA) can be used in context of computational chemistry to express and manage multi-level parallelism through the use of processor groups. For example, the numerical Hessian calculation using three levels of parallelism in NWChem computational chemistry package outperformed the original version of the NWChem code based on single level parallelism by a factor of 90% when running on 256 processors.

[1]  Aslak Tveito,et al.  Numerical solution of partial differential equations on parallel computers , 2006 .

[2]  Robert J. Harrison,et al.  Global Arrays: a portable "shared-memory" programming model for distributed memory computers , 1994, Proceedings of Supercomputing '94.

[3]  David E. Bernholdt,et al.  Managing Complexity in Modern High End Scientific Computing through Component-Based Software Engineering , 2004 .

[4]  Curtis L. Janssen Parallel quantum chemistry : a guide to installing and using the massively parallel quantum chemistry program. , 2004 .

[5]  Edoardo Aprà,et al.  High-level ab initio calculations for the four low-lying families of minima of (H2O)20. II. Spectroscopic signatures of the dodecahedron, fused cubes, face-sharing pentagonal prisms, and edge-sharing pentagonal prisms hydrogen bonding networks. , 2005, The Journal of chemical physics.

[6]  Sotiris S. Xantheas,et al.  AB INITIO STUDIES OF CYCLIC WATER CLUSTERS (H2O)N, N=1-6. III: COMPARISON OF DENSITY FUNCTIONAL WITH MP2 RESULTS , 1995 .

[7]  Robert J. Harrison,et al.  Global arrays: A nonuniform memory access programming model for high-performance computers , 1996, The Journal of Supercomputing.

[8]  James Arthur Kohl,et al.  Parallel PDE-Based Simulations Using the Common Component Architecture , 2006 .

[9]  Mark S. Gordon,et al.  A new hierarchical parallelization scheme: Generalized distributed data interface (GDDI), and an application to the fragment molecular orbital method (FMO) , 2004, J. Comput. Chem..

[10]  Jarek Nieplocha,et al.  Exploiting processor groups to extend scalability of the GA shared memory programming model , 2005, CF '05.

[11]  James Arthur Kohl,et al.  The CCA core specification in a distributed memory SPMD framework , 2002, Concurr. Comput. Pract. Exp..

[12]  Michel Dupuis,et al.  Parallel computation of second derivatives of RHF energy on distributed memory computers , 1997 .

[13]  Jarek Nieplocha,et al.  Advances, Applications and Performance of the Global Arrays Shared Memory Programming Toolkit , 2006, Int. J. High Perform. Comput. Appl..

[14]  Timothy S. Zwier,et al.  The Structure of Protonated Water Clusters , 2004, Science.

[15]  David E. Bernholdt,et al.  High performance computational chemistry: An overview of NWChem a distributed parallel application , 2000 .

[16]  Mark S. Gordon,et al.  Parallel algorithm for SCF analytic Hessians. I. Small scale algorithm , 1993 .

[17]  James Arthur Kohl,et al.  A Component Architecture for High-Performance Scientific Computing , 2006, Int. J. High Perform. Comput. Appl..

[18]  Michel Dupuis,et al.  Parallel computation of second derivatives of RHF energy on distributed memory computers , 1997, J. Comput. Chem..

[19]  Christian Janssen,et al.  Object-Oriented Implementation of Parallel Ab Initio Programs , 1995 .

[20]  Jarek Nieplocha,et al.  Component‐based integration of chemistry and optimization software , 2004, Journal of computational chemistry.