Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
MPI_Neighbor_alltoallw_init(3)	       MPI	  MPI_Neighbor_alltoallw_init(3)

NAME
     MPI_Neighbor_alltoallw_init  -   Create  a  persistent  request  for neigh-
     bor_alltoallw.

SYNOPSIS
     int MPI_Neighbor_alltoallw_init(const void *sendbuf, const int sendcounts[],
     const MPI_Aint sdispls[],
     const MPI_Datatype sendtypes[], void *recvbuf,
     const int recvcounts[],
     const MPI_Aint rdispls[],
     const MPI_Datatype recvtypes[], MPI_Comm comm,
     MPI_Info info, MPI_Request *request)

     int MPI_Neighbor_alltoallw_init_c(const void *sendbuf,
     const MPI_Count sendcounts[],
     const MPI_Aint sdispls[],
     const MPI_Datatype sendtypes[], void *recvbuf,
     const MPI_Count recvcounts[],
     const MPI_Aint rdispls[],
     const MPI_Datatype recvtypes[], MPI_Comm comm,
     MPI_Info info, MPI_Request *request)

INPUT PARAMETERS
     sendbuf
	    - starting address of send buffer (choice)
     sendcounts
	    - non-negative integer array (of length  outdegree)  specifying  the
	    number of elements to send to each neighbor (non-negative integer)
     sdispls
	    -  integer	array  (of length outdegree). Entry j specifies the dis-
	    placement in bytes (relative to sendbuf) from which to take the out-
	    going data destined for neighbor j (integer)
     sendtypes
	    - array of datatypes (of length outdegree). Entry  j  specifies  the
	    type of data to send to neighbor j (handle)
     recvcounts
	    -  non-negative  integer  array  (of length indegree) specifying the
	    number of elements that are received from each  neighbor  (non-nega-
	    tive integer)
     rdispls
	    -  integer	array  (of  length indegree). Entry i specifies the dis-
	    placement in bytes (relative to recvbuf) at which to place	the  in-
	    coming data from neighbor i (integer)
     recvtypes
	    -  array  of  datatypes  (of length indegree). Entry i specifies the
	    type of data received from neighbor i (handle)
     comm   - communicator with topology structure (handle)
     info   - info argument (handle)

OUTPUT PARAMETERS
     recvbuf
	    - starting address of receive buffer (choice)
     request
	    - communication request (handle)

THREAD AND INTERRUPT SAFETY
     This routine is thread-safe.  This means that this routine  may  be  safely
     used  by  multiple  threads  without  the need for any user-provided thread
     locks.  However, the routine is not interrupt safe.  Typically, this is due
     to the use of memory allocation routines such as malloc or other  non-MPICH
     runtime routines that are themselves not interrupt-safe.

NOTES FOR FORTRAN
     All  MPI  routines in Fortran (except for MPI_WTIME and MPI_WTICK ) have an
     additional argument ierr at the end of the argument list.	ierr is an inte-
     ger and has the same meaning as the return value of the routine in  C.   In
     Fortran, MPI routines are subroutines, and are invoked with the call state-
     ment.

     All  MPI  objects	(e.g.,	MPI_Datatype , MPI_Comm ) are of type INTEGER in
     Fortran.

ERRORS
     All MPI routines (except MPI_Wtime and MPI_Wtick ) return an error value; C
     routines as the value of the function and Fortran routines in the last  ar-
     gument.   Before  the  value  is returned, the current MPI error handler is
     called.  By default, this error handler aborts the MPI job.  The error han-
     dler may  be  changed  with  MPI_Comm_set_errhandler  (for  communicators),
     MPI_File_set_errhandler  (for  files),  and MPI_Win_set_errhandler (for RMA
     windows).	The MPI-1 routine MPI_Errhandler_set may be used but its use  is
     deprecated.   The predefined error handler MPI_ERRORS_RETURN may be used to
     cause error values to be returned.  Note that MPI does not  guarantee  that
     an  MPI  program  can  continue past an error; however, MPI implementations
     will attempt to continue whenever possible.

     MPI_SUCCESS
	    - No error; MPI routine completed successfully.
     MPI_ERR_ARG
	    - Invalid argument.  Some argument is invalid and is not  identified
	    by a specific error class (e.g., MPI_ERR_RANK ).
     MPI_ERR_BUFFER
	    -  Invalid	buffer	pointer.  Usually a null buffer where one is not
	    valid.
     MPI_ERR_COMM
	    - Invalid communicator.  A common error is to use a null  communica-
	    tor in a call (not even allowed in MPI_Comm_rank ).
     MPI_ERR_COUNT
	    -  Invalid	count argument.  Count arguments must be non-negative; a
	    count of zero is often valid.
     MPI_ERR_INFO
	    - Invalid Info
     MPI_ERR_TYPE
	    - Invalid datatype argument.  Additionally, this error can occur  if
	    an uncommitted MPI_Datatype (see MPI_Type_commit ) is used in a com-
	    munication call.
     MPI_ERR_OTHER
	    -  Other  error;  use MPI_Error_string to get more information about
	    this error code.

				    4/10/2026	  MPI_Neighbor_alltoallw_init(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=MPI_Neighbor_alltoallw_init_c&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help