What All Codes Should Do: Overview of Best Practices in HPC Software Development

a tutorial presented at

Exascale Computing Project Annual Meeting

on Tuesday 6 February 2018

Presenters: Anshu Dubey (Argonne National Laboratory), Michael A. Heroux (Sandia National Laboratories), and Jared O'Neal (Argonne National Laboratory)


This page provides detailed information specific to the tutorial event above. Expect updates to this page up to, and perhaps shortly after, the date of the tutorial. Pages for other tutorial events can be accessed from the main page of this site.


Quick Links

On this Page


Description

The accuracy and reliability of results produced by the scientific software depends not only on the individual components behaving correctly, but also on the validity of their interactions.

Therefore, a rigorous software process is a critical requirement for scientific productivity using such software.

However, most science teams struggle to find a good solution for themselves, partly due to lack of training and partly due to lack of resources within the team.

This tutorial leverages the combined expertise of various IDEAS project members to provide a methodology for devising a software process that meets the needs of individual projects


Presentation Slides

The latest version of the slides will always be available at https://doi.org/10.6084/m9.figshare.21799772.

Note that these files may include additional slides that will not be discussed during the tutorial, but questions are welcome.


Requested Citation

The requested citation the overall tutorial is:

Anshu Dubey, Michael A. Heroux, and Jared O’Neal, What All Codes Should Do: Overview of Best Practices in HPC Software Development tutorial, in Exascale Computing Project Annual Meeting, Knoxville, Tennessee, 2018. DOI: 10.6084/m9.figshare.21799772.

Individual modules may be cited as Speaker, Module Title, in What All Codes Should Do: Overview of Best Practices in HPC Software Development tutorial…


Acknowledgements

This tutorial is produced by the IDEAS Productivity project.

This work was supported by the U.S. Department of Energy Office of Science, Office of Advanced Scientific Computing Research (ASCR), and by the Exascale Computing Project (17-SC-20-SC), a collaborative effort of the U.S. Department of Energy Office of Science and the National Nuclear Security Administration.