Accelerating NWChem Coupled Cluster through dataflow-based execution. (July 2018) - Jagode, Heike; Danalis, Anthony; Dongarra, Jack
Numerical techniques used for describing many-body systems, such as the Coupled Cluster methods (CC) of the quantum chemistry packageNWChem, are of extreme interest to the computational chemistry community in fields such as catalytic reactions, solar energy, and bio-mass conversion. In spite of their importance, many of these computationally intensive algorithms have traditionally been thought of in a fairly linear fashion, or are parallelized in coarse chunks. In this paper, we present our effort of converting theNWChem 's CC code into a dataflow-based form that is capable of utilizing the task scheduling systemPaRSEC (Parallel Runtime Scheduling and Execution Controller): a software package designed to enable high-performance computing at scale. We discuss the modularity of our approach and explain how thePaRSEC -enabled dataflow version of the subroutines seamlessly integrate into theNWChem codebase. Furthermore, we argue how the CC algorithms can be easily decomposed into finer-grained tasks (compared with the original version ofNWChem ); and how data distribution and load balancing are decoupled and can be tuned independently. We demonstrate performance acceleration by more than a factor of two in the execution of the entire CC component ofNWChem, concluding that the utilization of dataflow-based execution for CC methods enables more efficient and scalable computation.