4.7 Article

Double Precision Is Not Needed for Many-Body Calculations: Emergent Conventional Wisdom

Journal

JOURNAL OF CHEMICAL THEORY AND COMPUTATION
Volume 14, Issue 8, Pages 4088-4096

Publisher

AMER CHEMICAL SOC
DOI: 10.1021/acs.jctc.8b00321

Keywords

-

Funding

  1. U.S. Air Force of Scientific Research (AFOSR) [FA9550-16-1-0051]
  2. QChem, Inc.

Ask authors/readers for more resources

Using single-precision floating-point representation reduces the size of data and computation time by a factor of 2 relative to double precision conventionally used in electronic structure programs. For large-scale calculations, such as those encountered in many-body theories, reduced memory footprint alleviates memory and input/output bottlenecks. Reduced size of data can lead to additional gains due to improved parallel performance on CPUs and various accelerators. However, using single precision can potentially degrade the accuracy of the computed quantities. Here we report an implementation of coupled-cluster and equation-of-motion coupled-cluster methods with single and double excitations in single precision. We consider both standard implementation and one using Cholesky decomposition or resolution-of-the-identity representation of electron-repulsion integrals. Numerical tests illustrate that when single precision is used in correlated calculations, the loss of accuracy is insignificant, and pure single-precision implementation can be used for computing energies, analytic gradients, excited states, and molecular properties. In addition to pure single precision calculations, our implementation allows one to follow a single-precision calculation by cleanup iterations, fully recovering double-precision results while retaining significant savings.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.7
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available