ESAIM: Proceedings and Surveys (Mar 2016)
An approach to increase reliability of HPC simulation, application to the Gysela5D code***
Abstract
Reproducibility of results is a strong requirement in most fields of research for experimental results to be called science. For results obtained through simulation software using high performance computing (HPC) this translates as code quality requirements. While there are many works focusing on software quality, these typically do not take the specificities of HPC scientific simulation softwareinto account. This paper presents an approach to introduce quality procedures in HPC scientific simulation softwarewhile remaining the less invasive as possible so as to ease its adoption. The approach relies on quality procedures including human code review and automated testing and offers a dedicated procedure to help correct defects found this way. These procedures are integrated in a development work-flow designed to improve the traceability of defects. By implementing this approach for the development of the Gysela code, we show that it is indeed viable and that the return on investment is positive. We also identify multiple reusable elements developed for this experiment that should reduce the cost of adopting the approach for other codes as well as some aspects that can still be improved to ensure a widespread propagation of the approach in the community.