JuliaParallel / JuliaParallel/MPI.jl

Option to disable unsupported features -- eg: matched send/recv

Open
#759 5 comments 0 reactions 0 assignees View on GitHub
Cray MPI
Dominant language
Julia
Stars
439
Forks
127
Avg merge
19h 6m
Merged PRs (30d)
17

Description

Hey Folks,

I am testing a basic MPI Send/Recv example and noticed that the version with `MPI.Send` and `MPI.Recv!` works fine, while MPI.send / MPI.recv don't on NERSC Perlmutter. The error points to: https://github.com/JuliaParallel/MPI.jl/blob/bfaa7ca876867897e212523f4e842a66e9afa9f3/src/pointtopoint.jl#L170 -- and digging around further, it turns out that currently `Mprobe` is not not supported by Cray.

This bug will be fixed eventually -- but I anticipate that this won't be the first time that a vendor's MPI implementation won't fully support everything in the standard. So my question is: do we want to develop a process to disable things like matched send/recv?

PSA: If you get:
```
MPICH ERROR [Rank 1] [job id 13281867.0] [Fri Aug 4 13:47:24 2023] [nid008633] - Abort(808039439) (rank 1 in comm 0): Fatal error in PMPI_Mprobe: Other MPI error, error stack:
PMPI_Mprobe(118)........: MPI_Mprobe(source=0, tag=5, comm=MPI_COMM_WORLD, message=0x7ffde7da199c, status=0x7ffde7da19a0)
PMPI_Mprobe(101)........:
MPID_Mprobe(199)........:
MPIDI_improbe_safe(146).:
MPIDI_improbe_unsafe(88):
(unknown)(): Other MPI error
```
then right now, switch to the upper-case functions -- eg. `MPI.Recv!`

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.