Run-Time Extensibility: Anything Less is Unsustainable
|Title||Run-Time Extensibility: Anything Less is Unsustainable|
|Publication Type||Conference Paper|
|Year of Publication||2013|
|Authors||Brown, J, Knepley, MG, Smith, BF|
|Conference Name||SC 13|
|Conference Location||Denver, CO|
Modern computational science and engineering is increasingly defined by multiphysics, multiscale simulation while raising the level of abstraction to risk-aware design and decision problems. This evolution unavoidably involves deeper software stacks and the cooperation of more distributed teams from multiple disciplines. Meanwhile, each application area continues to innovate and can often be characterized as much by the forms of required extensibility (e.g., boundary conditions, geometry, subgrid closures, analysis techniques, data sources, and inherent uncertainty/bias) as by the underlying equations. Sanitary workflow is paramount for smooth interaction in this environment, but it is too often compromised so long as the original author’s use case is deemed acceptable. We argue that many common approaches to configuration and extensibility create artificial bottlenecks that impede science goals, and that the only sustainable approach is to defer these to run-time. We present recommendations for implementing such an approach.