Researchers working under the Exascale Computing Project have shown that JuliaChem, a quantum chemistry software written with the Julia programming language, can deliver effective performance, superior ease of use, and improved scalability of calculations compared to the most commonly used applications. Their work was published in the Journal of Chemical Theory and Computation in July 2020.
Modern programming languages may provide for close control and high runtime performance but may be difficult to program in (i.e., “low-level” languages such as Fortran and C), or they may be easy to program in but slow down runtimes (i.e., “high-level” languages such as Python). Novel programming languages remain largely unexplored for their usefulness in quantum chemistry software development, specifically to improve electronic structure theory code performance.
The researchers implemented the restricted Hartree-Fock program to test the viability of using JuliaChem, a novel open source, hybrid Julia/C quantum chemistry software package for electronic structure theory code, against other codes. JuliaChem’s performance was benchmarked against the more-established language, GAMESS, using the S22 molecule test set. Julia was found to have the potential to deliver high-performance programming for quantum chemistry code with features such as just-in-time compilations, multiple dispatch, GPU support, and high interoperability with multiple languages.
Poole, David, Jorge L. Galvez Vallejo, and Mark S. Gordon. 2020. “A New Kid on the Block: Application of Julia to Hartree–Fock Calculations.” Journal of Chemical Theory and Computation 16 (8) (July 7): 5006–5013. doi:10.1021/acs.jctc.0c00337. http://dx.doi.org/10.1021/acs.jctc.0c00337.