Understanding HPC from a Software Engineering Perspective

Victor R. Basili, Jeffrey C. Carver, Daniela Cruzes, Lorin M. Hochstein, Jeffrey K. Hollingsworth, Forrest Shull, and Marvin V. Zelkowitz, Understanding the High-Performance-Computing Community: A Software Engineer's Perspective, in IEEE Software, vol. 25, no. 4, pp. 29-36, July-Aug. 2008. DOI: 10.1109/MS.2008.103

Prerequisites

What Are Strategies for More Effective Teams?

Published May 18, 2018

Contributor David Bernholdt

This article comes from the perspective of trying to help software engineering (SWE) researchers understand the high-performance computing community. Victor Basili and his students and collaborators are SWE researchers who have spent a significant amount of time working with the HPC community -- a relatively uncommon pursuit. The purpose of this article is to explain to the SWE community some of the ways in which the HPC community differs from other kinds of software development that are more commonly studied by SWE researchers. It is also useful for HPC researchers and computational scientists to start understanding how and why widely used (and often widely hyped) SWE methodologies might need to be adapted and tailored for use in HPC and computational science and engineering (CSE), or even might not be useful in the ways that they are in other types of software development. The article can give CSE researchers some insights into the interests of SWE researchers with whome they might want to interact.