For many computational chemistry packages, being able to efficiently and effectively scale across an exascale cluster is a heroic feat. Collective experience from the Department of Energy’s Exascale Computing Project suggests that achieving exascale performance requires far more planning, design, and optimization than scaling to petascale. In many cases, entire rewrites of software are necessary to address fundamental algorithmic bottlenecks. This in turn requires a tremendous amount of resources and development time, resources that cannot reasonably be afforded by every computational science project. It thus becomes imperative that computational science transition to a more sustainable paradigm. Key to such a paradigm is modular software. While the importance of modular software is widely recognized, what is perhaps not so widely appreciated is the effort still required to leverage modular software in a sustainable manner. The present manuscript introduces PluginPlay, https://github.com/NWChemEx-Project/PluginPlay, an inversion-of-control framework designed to facilitate developing, maintaining, and sustaining modular scientific software packages. This manuscript focuses on the design aspects of PluginPlay and how they specifically influence the performance of the resulting package. Although, PluginPlay serves as the framework for the NWChemEx package, PluginPlay is not tied to NWChemEx or even computational chemistry. We thus anticipate PluginPlay to prove to be a generally useful tool for a number of computational science packages looking to transition to the exascale.
Skip Nav Destination
PluginPlay: Enabling exascale scientific software one module at a time
,
,
,
,
,
,
,
,
,
,
,
,
,
,
CHORUS
Article navigation
14 May 2023
Research Article|
May 12 2023
PluginPlay: Enabling exascale scientific software one module at a time

Available to Purchase
Ryan M. Richard
;
Ryan M. Richard
a)
(Conceptualization, Formal analysis, Investigation, Methodology, Software, Supervision, Validation, Visualization, Writing – original draft, Writing – review & editing)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
2
Iowa State University
, Ames, Iowa 50011, USA
a)Author to whom correspondence should be addressed: [email protected]
Search for other works by this author on:
Kristopher Keipert
;
Kristopher Keipert
(Conceptualization, Methodology, Software)
3
NVIDIA Corporation
, Santa Clara, California 95051, USA
Search for other works by this author on:
Jonathan Waldrop
;
Jonathan Waldrop
(Conceptualization, Methodology, Software, Writing – review & editing)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
Search for other works by this author on:
Murat Keçeli
;
Murat Keçeli
(Conceptualization, Methodology, Software, Validation, Writing – review & editing)
4
Argonne National Laboratory
, Lemont, Illinois 60439, USA
Search for other works by this author on:
David Williams-Young
;
David Williams-Young
(Software)
5
Lawrence Berkeley National Laboratory
, Berkeley, California 94720, USA
Search for other works by this author on:
Raymond Bair
;
Raymond Bair
(Project administration, Supervision)
4
Argonne National Laboratory
, Lemont, Illinois 60439, USA
Search for other works by this author on:
Jeffery Boschen;
Jeffery Boschen
(Conceptualization, Software)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
2
Iowa State University
, Ames, Iowa 50011, USA
Search for other works by this author on:
Zachery Crandall
;
Zachery Crandall
(Software)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
2
Iowa State University
, Ames, Iowa 50011, USA
Search for other works by this author on:
Kevin Gasperich
;
Kevin Gasperich
(Software)
4
Argonne National Laboratory
, Lemont, Illinois 60439, USA
Search for other works by this author on:
Quazi Ishtiaque Mahmud
;
Quazi Ishtiaque Mahmud
(Software)
2
Iowa State University
, Ames, Iowa 50011, USA
Search for other works by this author on:
Ajay Panyala
;
Ajay Panyala
(Software, Writing – review & editing)
6
Pacific Northwest National Laboratory
, Richland, Washington 99354, USA
Search for other works by this author on:
Edward Valeev
;
Edward Valeev
(Conceptualization, Formal analysis, Methodology)
7
Virginia Tech
, Blacksburg, Virginia 24061, USA
Search for other works by this author on:
Hubertus van Dam
;
Hubertus van Dam
(Conceptualization, Software, Supervision)
8
Brookhaven National Laboratory
, Upton, New York 11973, USA
Search for other works by this author on:
Wibe A. de Jong
;
Wibe A. de Jong
(Conceptualization, Supervision, Writing – original draft, Writing – review & editing)
5
Lawrence Berkeley National Laboratory
, Berkeley, California 94720, USA
Search for other works by this author on:
Theresa L. Windus
Theresa L. Windus
b)
(Conceptualization, Funding acquisition, Project administration, Supervision, Writing – original draft, Writing – review & editing)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
2
Iowa State University
, Ames, Iowa 50011, USA
Search for other works by this author on:
Ryan M. Richard
1,2,a)
Kristopher Keipert
3
Jonathan Waldrop
1
Murat Keçeli
4
David Williams-Young
5
Raymond Bair
4
Jeffery Boschen
1,2
Zachery Crandall
1,2
Kevin Gasperich
4
Quazi Ishtiaque Mahmud
2
Ajay Panyala
6
Edward Valeev
7
Hubertus van Dam
8
Wibe A. de Jong
5
Theresa L. Windus
1,2,b)
1
Ames National Laboratory
, Ames, Iowa 50011, USA
2
Iowa State University
, Ames, Iowa 50011, USA
3
NVIDIA Corporation
, Santa Clara, California 95051, USA
4
Argonne National Laboratory
, Lemont, Illinois 60439, USA
5
Lawrence Berkeley National Laboratory
, Berkeley, California 94720, USA
6
Pacific Northwest National Laboratory
, Richland, Washington 99354, USA
7
Virginia Tech
, Blacksburg, Virginia 24061, USA
8
Brookhaven National Laboratory
, Upton, New York 11973, USA
a)Author to whom correspondence should be addressed: [email protected]
b)
Electronic mail: [email protected]
J. Chem. Phys. 158, 184801 (2023)
Article history
Received:
February 27 2023
Accepted:
April 18 2023
Connected Content
A companion article has been published:
Introducing a modular framework for the future of scientific software
Citation
Ryan M. Richard, Kristopher Keipert, Jonathan Waldrop, Murat Keçeli, David Williams-Young, Raymond Bair, Jeffery Boschen, Zachery Crandall, Kevin Gasperich, Quazi Ishtiaque Mahmud, Ajay Panyala, Edward Valeev, Hubertus van Dam, Wibe A. de Jong, Theresa L. Windus; PluginPlay: Enabling exascale scientific software one module at a time. J. Chem. Phys. 14 May 2023; 158 (18): 184801. https://doi.org/10.1063/5.0147903
Download citation file:
Pay-Per-View Access
$40.00
Sign In
You could not be signed in. Please check your credentials and make sure you have an active account and try again.
Citing articles via
The Amsterdam Modeling Suite
Evert Jan Baerends, Nestor F. Aguirre, et al.
DeePMD-kit v2: A software package for deep potential models
Jinzhe Zeng, Duo Zhang, et al.
CREST—A program for the exploration of low-energy molecular chemical space
Philipp Pracht, Stefan Grimme, et al.
Related Content
TAMM: Tensor algebra for many-body methods
J. Chem. Phys. (July 2023)
High-throughput ab initio reaction mechanism exploration in the cloud with automated multi-reference validation
J. Chem. Phys. (February 2023)