We present the Distributed and Unified Numerics Environment (DUNE). It is an open source C++ software framework for the parallel solution of partial differential equations with grid-based methods. It allows users to rapidly build their own custom parallel simulation software using provided building blocks.
Unlike other frameworks it is designed for parallel computations from the ground up. It is not built around fixed data structures, but represents a fine grained interface to several supported grid managers (simplicial, structured, unstructured, adaptive, ...), and solvers. Algorithms based on the interface can switch between different components, and approaches without loosing performance due to generic programming techniques.
We show DUNE’s scalability with a parallel ground water simulation using nearly 300,000 cores and 150 billion unknowns and conclude with a current parallelization effort of an open source oil reservoir simulator.
See also dune-project.org and opm-project.org