Parallel ISTL
This changes the linear algebra interface such that parallel linear algebra backends can be used and provides the implementation of the interface for parallel ISTL solvers.
Adds:
- Support for parallel ISTL solvers using the current solver interface
- Runtime switch for overlap type of the ISTL solver used
-
solver->category: [default, sequential, nonoverlapping, overlapping]
initfile parameter -
Comm
object for the linear algebra interface that is to be used as a container for all required information for running the backend's solvers in parallel - Implementation of the
Comm
object for ISTL
Changes:
- Linear algebra classes now use a
Traits
class as template parameter
TODO:
-
Check if Grid
uses overlap and use[Non]OverlappingSchwarzOperator
-
Provide an efficient method for computing the parallel index set -
Resolve allTODO(FM)
markers -
Make an alternative implementation for nonoverlapping Schwarz -
Handle the corner caseoverlapSize + ghostSize == 0
-
Add an example or test file -
Update assembler element loops to use the proper partition set
Relates to #4 (closed).
Edited by Müller, Felix
Merge request reports
Activity
added 1 commit
- 6285e6d5 - Added Comm template argument to LinAlg classes
added 1 commit
- 72ea2fb8 - Replaced Mat,VecX,VecB by Traits template parameter
- Resolved by Müller, Felix
added 1 commit
- 0ee4b343 - Replaced enable_if for DefaultCreators by template specialization
added 1 commit
- 688b9563 - Simplified DefaultCreators template specializations
added 1 commit
- a573a982 - Simplified UmfpackRunner template specialization
- Resolved by Müller, Felix
- Resolved by Müller, Felix
added 1 commit
- 899b42a7 - Changed RunnerInterface to take an additional Comm argument; Added Comm...
- Resolved by Müller, Felix
That pipeline failure is due to a bug in
dune/istl/owneroverlapcopy.hh
, I'll fix that with a wrapper for the index pair later.
added 1 commit
- 5c2093af - Added workaround for comm index issue; Fixed problem with lack of copy elision for older compilers
added 1 commit
- a5a50014 - Changed NoComm dummy to work with new interface
added 1 commit
- ee683a4d - Moved typedefs to Traits class; Changed creator return type to unique_ptr
Please register or sign in to reply