RSE of a Quantum Transport Code and its Effects
DOI:
https://doi.org/10.14279/eceasst.v86.1.2775Keywords:
Continuous Integration, continuous benchmarking, High-Performance Computing, Research Software Engineering, Software Sustainability, version controlAbstract
This paper presents our research software engineering (RSE) experiences
over two years with libNEGF, a quantum transport code. We describe
practical approaches to code quality assurance--including continuous
integration, automated testing, and compiler warning correction--and
performance engineering through continuous benchmarking. Our systematic
application of these practices revealed critical defects: uninitialized
memory reads, out-of-bounds writes, and notably, a misunderstood
mathematical model in our boundary condition handling. We also document how
continuous benchmarking exposed performance regressions caused by HPC
system configuration changes. Our findings provide data points suggesting
that a dangerous class of defects--equivalent to undefined behavior in
C/C++ and processor-dependent behavior in Fortran--is as prevalent in
Fortran scientific codes as elsewhere.
While libNEGF is implemented in Fortran, most recommendations are
applicable to scientific software regardless of implementation language,
and they can be implemented selectively or in their entirety for both new
and existing projects.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2026 Christoph Conrads, Edoardo Di Napoli

This work is licensed under a Creative Commons Attribution 4.0 International License.
