trixi-framework / trixi-framework/Trixi.jl

MPI: MPI array type for dispatch

Open
#329 2 comments 0 reactions 0 assignees View on GitHub
parallelization
Dominant language
Julia
Stars
731
Forks
166
Avg merge
2d 18h
Merged PRs (30d)
25

Description

I think it might be good to implement a lightweight MPI array type wrapping a standard array. Then, we can dispatch on the MPI array type to distinguish parallel from serial runs (and we need to pass the coefficients anyway). Moreover, this allows us to redirect broadcasting etc. to the parent array and overload reductions to make use of MPI. In this way, we can also use error-based time step control from OrdinaryDiffEq.jl etc.

We may look at
- https://github.com/CliMA/ClimateMachine.jl/blob/master/src/Arrays/MPIStateArrays.jl
- https://github.com/fverdugo/PartitionedArrays.jl
- https://github.com/jipolanco/PencilArrays.jl
- https://github.com/barche/MPIArrays.jl

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.