Creating and maintaining effective large scale scientific computing applications Balancing ease-of-use, extensibility, and performance requirements

Computational physics simulations of interest to the ASCI and other programs at Los Alamos National Laboratory consist of hundreds of thousands of lines of code, written using multiple programming languages. These codes must execute accurately, consistently, and efficiently on a variety of computing...

Full description

Bibliographic Details
Main Author: Barrett, R. F.
Language:unknown
Published: 2021
Subjects:
Online Access:http://www.osti.gov/servlets/purl/977389
https://www.osti.gov/biblio/977389
Description
Summary:Computational physics simulations of interest to the ASCI and other programs at Los Alamos National Laboratory consist of hundreds of thousands of lines of code, written using multiple programming languages. These codes must execute accurately, consistently, and efficiently on a variety of computing platforms throughout their multiple decade lifetimes. They must withstand the participation of many code developers, each of whom brings different skill sets to the project. They must adapt to dynamic user requirements, and thus be amenable to the inclusion of new algorithms and other improvements. In this talk I will illustrate how these requirements have been managed by describing a variety of specific applications and computational kernels. These applications include hydrodynamics algorithms operating on unstructured and semi-structured dynamic meshes, a couple of different radiation transport approaches (S{sub n}, and Monte Carlo), and an approach to solving linear systems when the system properties are poorly understood.