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

Use pika's transform_mpi and polling support #1125

Merged
merged 20 commits into from
Nov 29, 2024
Merged

Use pika's transform_mpi and polling support #1125

merged 20 commits into from
Nov 29, 2024

Commits on Nov 6, 2024

  1. Use pika's transform_mpi, polling modes

    This is a squashed commit containing multiple changes
    
    completion_modes:
    pika supports different completion modes that may be used
    as an alternative to the dlaf:: transformMPI mechanism
    that uses yield_while to wait on an MPI request.
    
    The completion modes may be set via the environment variable
    PIKA_MPI_COMPLETION_MODE=<numeric value>
    which by default will select the one chosen by pika/dlaf
    developers known to give good results across a broad range of
    use cases.
    
    polling:
    The pika polling loop may test for one or multiple request
    completions on each iteration through the scheduling loop
    the environment var
    PIKA_MPI_POLLING_SIZE=<numeric value> (default 8)
    may be used to vary the polling size (typically the default value
    can be used without any need to play with this value)
    
    mpi pool: pika will create the mpi pool if the completion mode
    has the pool flag set, the user needs only to call the pool create
    function during the pika::init setup phase.
    Cleanup of the pool on shutdown will also be handled automatically
    
    The user should use pika::mpi::pool_name instead of raw "mpi",
    mpi pool management has been deferred tom pika::mpi
    
    Change: the transform mpi code does not need to return an MPI_SUCCESS
    value, the return value from mpi_transform has been removed to simplify
    code and an error is set using senders set_error if any mpi call fails.
    Should mpi_transform calls thnat return other value be required, this code
    can be reinstated.
    biddisco committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    1b7a02c View commit details
    Browse the repository at this point in the history
  2. Move MPI debug ifdef

    biddisco committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    d1beb5b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    88f2f13 View commit details
    Browse the repository at this point in the history
  4. Update dla mpi to use latest pika::mpi::experimental API

    A series of changes to pika::mpi have changed both the API and the
    internal pool creation mechanism to simplify end user access to the
    transform_mpi features and setup of mpi polling itself.
    biddisco committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    eb87dce View commit details
    Browse the repository at this point in the history
  5. Simplify init procedure as pika now uses command-line pool creation

    latest pika:: transform_mpi is enabled/disabled via the command line
    and does not require explicit enabling via init_params
    biddisco committed Nov 6, 2024
    Configuration menu
    Copy the full SHA
    929abd2 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    76a4588 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    fb80d4b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    572fd55 View commit details
    Browse the repository at this point in the history

Commits on Nov 11, 2024

  1. Configuration menu
    Copy the full SHA
    99ed7a1 View commit details
    Browse the repository at this point in the history

Commits on Nov 13, 2024

  1. Configuration menu
    Copy the full SHA
    6f353e6 View commit details
    Browse the repository at this point in the history

Commits on Nov 14, 2024

  1. Require pika 0.30.0 or newer

    msimberg committed Nov 14, 2024
    Configuration menu
    Copy the full SHA
    43763dc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9921466 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2024

  1. Configuration menu
    Copy the full SHA
    069c764 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    608c4b9 View commit details
    Browse the repository at this point in the history

Commits on Nov 19, 2024

  1. Configuration menu
    Copy the full SHA
    238c1fb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    226ebae View commit details
    Browse the repository at this point in the history
  3. Cleanup Formatting

    biddisco committed Nov 19, 2024
    Configuration menu
    Copy the full SHA
    be6ba17 View commit details
    Browse the repository at this point in the history

Commits on Nov 21, 2024

  1. Configuration menu
    Copy the full SHA
    ca2c626 View commit details
    Browse the repository at this point in the history

Commits on Nov 22, 2024

  1. Configuration menu
    Copy the full SHA
    3e0e45d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f6af9bd View commit details
    Browse the repository at this point in the history