Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encapsulate multi-process communication (part 2) #1817

Merged
merged 34 commits into from
Oct 15, 2019

Commits on Oct 7, 2019

  1. mpidummy: Add MPI_OP_NULL constant

    Use value `0` for consistency with `MPI_DATATYPE_NULL` and increment
    the index of other "op" constants.
    bradking committed Oct 7, 2019
    Configuration menu
    Copy the full SHA
    7e9cbb9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c0bfedb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3234c58 View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2019

  1. Configuration menu
    Copy the full SHA
    9160f88 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4bd86ba View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fff4435 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8b14d29 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    14edaa4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    81e1cba View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c7f0d71 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    8ab36c2 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    c88c1a8 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    4afe40d View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    1c62294 View commit details
    Browse the repository at this point in the history
  12. helper: Factor out MPI-specific Comm interfaces

    Create a dedicated header to hold functions to convert between the Comm
    encapsulation and MPI_Comm.  In the future the main Comm header will not
    need to include raw MPI interfaces at all.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    3371561 View commit details
    Browse the repository at this point in the history
  13. helper: Move Comm MPI implementation behind an abstraction

    Move the MPI-backed implementation into a separate file.  Use an
    abstraction layer with runtime dispatch so that the main Comm does not
    need MPI.  Note that we still use a few MPI types and constants in the
    Comm interface, but those can be refactored later.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    2b39dfa View commit details
    Browse the repository at this point in the history
  14. helper: Drop unused Comm::AllGatherArrays method

    It was used only inside our own implementation in one place, and its
    implementation was just a thin wrapper around our `Allgather` interface,
    so simply use that directly.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    e5db85b View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    a1b5a40 View commit details
    Browse the repository at this point in the history
  16. helper: Generalize Comm::GathervArrays implementation

    With our general `Gatherv` interface we no longer need a per-type
    specialization of `GathervArrays`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    9304548 View commit details
    Browse the repository at this point in the history
  17. helper: Generalize Comm::GatherArrays implementation

    With our general `Gather` interface we no longer need a per-type
    specialization of `GatherArrays`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    6fc159c View commit details
    Browse the repository at this point in the history
  18. helper: Generalize Comm::ReduceValues implementation

    With our general `Reduce` interface we no longer need a per-type
    specialization of `ReduceValues`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    d58189d View commit details
    Browse the repository at this point in the history
  19. helper: Generalize Comm::BroadcastValue implementation

    With our general `Bcast` interface we no longer need a per-type
    specialization of `BroadcastValue`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    0a21623 View commit details
    Browse the repository at this point in the history
  20. helper: Generalize Comm::BroadcastVector implementation

    With our general `Bcast` interface we no longer need a per-type
    specialization of `BroadcastVector`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    ccdc084 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    c85b97b View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    4e76dbc View commit details
    Browse the repository at this point in the history
  23. helper: Add internal data type size table to Comm

    Avoid explicitly passing `sizeof(T)` to `Bcast`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    e5adee0 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    f3df8de View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    06ab278 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    f5939f9 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    c3991a2 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    554a756 View commit details
    Browse the repository at this point in the history
  29. helper: Add dummy Comm implementation

    Create a Comm implementation for serial programs.  Use implementations
    inspired by `source/adios2/helper/mpidummy.cpp`.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    41219da View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    8989123 View commit details
    Browse the repository at this point in the history
  31. helper: Port Comm MPI backend away from SMPI_ wrappers

    If `CommFromMPI()` is given `MPI_COMM_NULL`, fall back to `CommDummy()`
    instead.
    bradking committed Oct 9, 2019
    Configuration menu
    Copy the full SHA
    c47c2b9 View commit details
    Browse the repository at this point in the history