z-logo
Premium
Accelerating AIREBO: Navigating the Journey from Legacy to High‐Performance Code
Author(s) -
Höhnerbach Markus,
Bientinesi Paolo
Publication year - 2019
Publication title -
journal of computational chemistry
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.907
H-Index - 188
eISSN - 1096-987X
pISSN - 0192-8651
DOI - 10.1002/jcc.25796
Subject(s) - code (set theory) , computer science , programming language , set (abstract data type)
Despite initiatives to improve the quality of scientific software, there still is a large presence of legacy code. The focus of such code is usually on domain‐science features, rather than maintainability or highest performance. Additionally, architecture specific optimizations often result in less maintainable code. In this article, we focus on the AIREBO potential from LAMMPS, which exhibits large and complex computational kernels, hindering any systematic optimization. We suggest an approach based on complexity‐reducing refactoring and hardware abstraction and present the journey from the C++ port of a previous Fortran code to performance‐portable, KNC‐hybrid, vectorized, scalable, and optimized code supporting full and reduced precision. The journey includes extensive testing that fixed bugs in the original code. Large‐scale, full‐precision runs sustain speedups of more than 4× (KNL) and 3× (Skylake). © 2019 Wiley Periodicals, Inc.

This content is not available in your region!

Continue researching here.

Having issues? You can contact us here