You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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:
msg, stat =Mprobe(comm, Status; source=source, tag=tag)
-- 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!
The text was updated successfully, but these errors were encountered:
To elaborate: with "a process to disable things like matched send/recv?" I mean something like a setting that will disable selected non-crucial features. This setting will non-mandatory, and will not disable anything default, but can be used on systems with incomplete MPI support.
I'd have to look at the spec again, but it certainly isn't correct in the presence of multi-threading (since there is no guarantee that the receive will match the probe request)
Hey Folks,
I am testing a basic MPI Send/Recv example and noticed that the version with
MPI.Send
andMPI.Recv!
works fine, while MPI.send / MPI.recv don't on NERSC Perlmutter. The error points to:MPI.jl/src/pointtopoint.jl
Line 170 in bfaa7ca
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:
then right now, switch to the upper-case functions -- eg.
MPI.Recv!
The text was updated successfully, but these errors were encountered: