DUNE PDELab (2.8)
Instead of using parallel data structures (matrices and vectors) that (implicitly) know the data distribution and communication patterns, there is a clear separation of the parallel data composition together with the communication APIs from the data structures. This allows for implementing overlapping and nonoverlapping domain decompositions as well as data parallel parallelisation approaches.
The solvers can easily be turned into parallel solvers initializing them with matching parallel subclasses of the base classes ScalarProduct, Preconditioner and LinearOperator.
The information of the data distribution is provided by OwnerOverlapCopyCommunication of communication API.
Currently only data parallel versions are shipped with dune-istl. Domain decomposition can be found in module dune-dd.