Optimizing AIREBO: Navigating the Journey from Complex Legacy Code to High Performance
Markus H\"ohnerbach, Paolo Bientinesi

TL;DR
This paper describes a comprehensive refactoring and optimization process for the complex AIREBO potential in LAMMPS, achieving significant speedups and improved code quality through hardware abstraction and performance portability.
Contribution
It introduces a systematic approach to refactoring legacy scientific code, focusing on complexity reduction and hardware abstraction, resulting in scalable, high-performance implementations.
Findings
Achieved over 4x speedup on KNL architecture
Fixed bugs through extensive testing of the refactored code
Developed a performance-portable, vectorized implementation supporting multiple precisions
Abstract
Despite initiatives to improve the quality of scientific codes, there still is a large presence of legacy code. Such code often needs to implement a lot of functionality under time constrains, sacrificing quality. Additionally, quality is rarely improved by optimizations for new architectures. This development model leads to code that is increasingly difficult to work with. Our suggested solution includes complexity-reducing refactoring and hardware abstraction. We focus on the AIREBO potential from LAMMPS, where the challenge is that any potential kernel is rather large and complex, hindering systematic optimization. This issue is common to codes that model multiple physical phenomena. We present our journey from the C++ port of a previous Fortran code to performance-portable, KNC-hybrid, vectorized, scalable, optimized code supporting full and reduced precision. The journey includes…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advancements in Semiconductor Devices and Circuit Design · Radiation Effects in Electronics
