Crossscale efficient tensor contractions for coupled cluster computations through multiple programming model backends
Coupledcluster methods provide highly accurate models of molecular structure through explicit numerical calculation of tensors representing the correlation between electrons. These calculations are dominated by a sequence of tensor contractions, motivating the development of numerical libraries for such operations. While based on matrix–matrix multiplication, these libraries are specialized to exploit symmetries in the molecular structure and in electronic interactions, and thus reduce the size of the tensor representation and the complexity of contractions. The resulting algorithms are irregular and their parallelization has been previously achieved via the use of dynamic scheduling or specialized data decompositions. We introduce our efforts to extend the Libtensor framework to work in the distributed memory environment in a scalable and energyefficient manner. We achieve up to 240× speedup compared with the optimized shared memory implementation of Libtensor. We attain scalability to hundreds of thousands of compute cores on three distributedmemory architectures (Cray XC30 and XC40, and IBM Blue Gene/Q), and on a heterogeneous GPUCPU system (Cray XK7). As the bottlenecks shift from being computebound DGEMM's to communicationbound collectives as the size of the molecular system scales, we adopt two radically different parallelization approaches for handling loadimbalance, tasking and bulk synchronous models. Nevertheless, we preserve a unifiedmore »
 Authors:

^{[1]};
^{[2]};
^{[1]};
^{[3]}
 Lawrence Berkeley National Lab. (LBNL), Berkeley, CA (United States)
 QChem, Inc., Pleasanton, CA (United States)
 Univ. of Southern California, Los Angeles, CA (United States)
 Publication Date:
 Grant/Contract Number:
 AC0205CH11231; AC0500OR22725; AC0206CH11357
 Type:
 Accepted Manuscript
 Journal Name:
 Journal of Parallel and Distributed Computing
 Additional Journal Information:
 Journal Volume: 106; Journal Issue: C; Journal ID: ISSN 07437315
 Publisher:
 Elsevier
 Research Org:
 Lawrence Berkeley National Lab. (LBNL), Berkeley, CA (United States)
 Sponsoring Org:
 USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC21)
 Country of Publication:
 United States
 Language:
 English
 Subject:
 97 MATHEMATICS AND COMPUTING; Tensor Contraction Engines; Quantum Chemistry; Libtensor; Cyclops; High Performance Computing; Distributed Memory Programming Models; Energy Efficiency
 OSTI Identifier:
 1379911
 Alternate Identifier(s):
 OSTI ID: 1396630
Ibrahim, Khaled Z., Epifanovsky, Evgeny, Williams, Samuel, and Krylov, Anna I.. Crossscale efficient tensor contractions for coupled cluster computations through multiple programming model backends. United States: N. p.,
Web. doi:10.1016/j.jpdc.2017.02.010.
Ibrahim, Khaled Z., Epifanovsky, Evgeny, Williams, Samuel, & Krylov, Anna I.. Crossscale efficient tensor contractions for coupled cluster computations through multiple programming model backends. United States. doi:10.1016/j.jpdc.2017.02.010.
Ibrahim, Khaled Z., Epifanovsky, Evgeny, Williams, Samuel, and Krylov, Anna I.. 2017.
"Crossscale efficient tensor contractions for coupled cluster computations through multiple programming model backends". United States.
doi:10.1016/j.jpdc.2017.02.010. https://www.osti.gov/servlets/purl/1379911.
@article{osti_1379911,
title = {Crossscale efficient tensor contractions for coupled cluster computations through multiple programming model backends},
author = {Ibrahim, Khaled Z. and Epifanovsky, Evgeny and Williams, Samuel and Krylov, Anna I.},
abstractNote = {Coupledcluster methods provide highly accurate models of molecular structure through explicit numerical calculation of tensors representing the correlation between electrons. These calculations are dominated by a sequence of tensor contractions, motivating the development of numerical libraries for such operations. While based on matrix–matrix multiplication, these libraries are specialized to exploit symmetries in the molecular structure and in electronic interactions, and thus reduce the size of the tensor representation and the complexity of contractions. The resulting algorithms are irregular and their parallelization has been previously achieved via the use of dynamic scheduling or specialized data decompositions. We introduce our efforts to extend the Libtensor framework to work in the distributed memory environment in a scalable and energyefficient manner. We achieve up to 240× speedup compared with the optimized shared memory implementation of Libtensor. We attain scalability to hundreds of thousands of compute cores on three distributedmemory architectures (Cray XC30 and XC40, and IBM Blue Gene/Q), and on a heterogeneous GPUCPU system (Cray XK7). As the bottlenecks shift from being computebound DGEMM's to communicationbound collectives as the size of the molecular system scales, we adopt two radically different parallelization approaches for handling loadimbalance, tasking and bulk synchronous models. Nevertheless, we preserve a unified interface to both programming models to maintain the productivity of computational quantum chemists.},
doi = {10.1016/j.jpdc.2017.02.010},
journal = {Journal of Parallel and Distributed Computing},
number = C,
volume = 106,
place = {United States},
year = {2017},
month = {3}
}