Home

MPIIrecvvoid

MPIIrecvvoid is not a standard MPI function. In most MPI documentation and implementations, there is no function named MPIIrecvvoid. When this identifier appears in code or notes, it is usually a project-specific wrapper, a misnomer, or a custom binding rather than a portable MPI routine. The standard non-blocking receive in MPI is MPI_Irecv.

MPI_Irecv provides a non-blocking receive operation. Its buffer argument is a pointer to the memory where incoming

In standard MPI, even when receiving into a void-like buffer, the datatype must be given to describe

If a symbol named MPIIrecvvoid appears, it should be treated as non-portable or wrapper-specific. Its exact

data
will
be
stored,
and
the
datatype
argument
describes
the
type
of
each
received
item.
The
count
parameter
specifies
how
many
elements
of
that
datatype
are
expected.
The
call
returns
an
MPI_Request,
allowing
the
program
to
proceed
concurrently
with
the
communication.
Completion
is
tested
or
waited
for
later
with
MPI_Test
or
MPI_Wait,
respectively.
After
completion,
MPI_Get_count
can
be
used
to
determine
how
many
elements
were
actually
received
if
the
count
was
a
variable
quantity.
the
data.
For
receiving
arbitrary
raw
bytes,
MPI_BYTE
can
be
used
as
the
datatype,
with
the
count
set
to
the
number
of
bytes.
The
void*
nature
of
the
buffer
is
a
property
of
C
pointers;
MPI
itself
relies
on
the
datatype
to
interpret
the
bytes.
Correct
use
requires
matching
the
sender’s
datatype
and
the
receiver’s
datatype
and
ensuring
buffer
capacity.
behavior
cannot
be
assumed
from
the
MPI
standard,
and
portability
across
MPI
implementations
is
not
guaranteed.
See
also
MPI_Irecv,
MPI_Wait,
MPI_Test,
MPI_Get_count,
and
MPI_BYTE.