Advancing Scientific Productivity through Better Scientific Software: Developer Productivity and Software Sustainability Report
IDEAS-ECP Team Collaborators, Michael A. Heroux, Lois Curfman McInnes, David E. Bernholdt, Anshu Dubey, Elsa J. Gonsiorowski, Osni Marques, D. Moulton, Boyana Norris, Elaine M. Raybourn, Satish Balay, Roscoe A. Bartlett, Lisa Childers, Todd Gamblin, Patricia A. Grubel, Rinku Gupta, Rebecca J. Hartman-Baker, Judith Hill, Stephen D. Hudson, Christoph Junghans · 2020
The Exascale Computing Project (ECP) provides a unique opportunity to advance computational science and engineering (CSE) through an accelerated growth phase in extreme-scale computing. Central to the project is the development of next-generation applications and software technologies that can exploit emerging architectures for optimal performance and provide high-fidelity, multiphysics, multiscale capabilities. However, disruptive changes in computer architectures and the complexities of tackling new frontiers in extreme-scale modeling, simulation, and analysis present daunting challenges to the productivity of software developers and the sustainability of software artifacts. Members of the CSE community - especially at extreme scales but more broadly at all scales of computing - face an urgent need to improve developer productivity, positively impacting product quality, development time, and staffing resources, and software sustainability, reducing the cost of maintaining, sustaining, and evolving software capabilities.