SIAMPP14.pdf (431.55 kB)
Runtime Configurability in PETSc
The ability to dynamically configure a deeply nested hierarchy of objects is a key feature in the design of PETSc. This allows the user to assemble an optimal solver tailored to problem characteristics without changing the application code, and also allows easy comparison among competing methods. We will demonstrate the efficacy of this approach for both linear and nonlinear systems. Moreover, we extend this paradigm to encompass residual evaluation and other key simulation operations.