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

  
 
  

home | help
MPI_Put(3)			       MPI			      MPI_Put(3)

NAME
     MPI_Put -	Put data into a memory window on a remote process

SYNOPSIS
     int MPI_Put(const void *origin_addr, int origin_count,
     MPI_Datatype origin_datatype, int target_rank, MPI_Aint target_disp,
     int target_count, MPI_Datatype target_datatype, MPI_Win win)

     int MPI_Put_c(const void *origin_addr, MPI_Count origin_count,
     MPI_Datatype origin_datatype, int target_rank,
     MPI_Aint target_disp, MPI_Count target_count,
     MPI_Datatype target_datatype, MPI_Win win)

INPUT PARAMETERS
     origin_addr
	    - initial address of origin buffer (choice)
     origin_count
	    - number of entries in origin buffer (non-negative integer)
     origin_datatype
	    - datatype of each entry in origin buffer (handle)
     target_rank
	    - rank of target (non-negative integer)
     target_disp
	    -  displacement  from start of window to target buffer (non-negative
	    integer)
     target_count
	    - number of entries in target buffer (non-negative integer)
     target_datatype
	    - datatype of each entry in target buffer (handle)
     win    - window object used for communication (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_BUFFER
	    - Invalid buffer pointer.  Usually a null buffer where  one  is  not
	    valid.
     MPI_ERR_COUNT
	    -  Invalid	count argument.  Count arguments must be non-negative; a
	    count of zero is often valid.
     MPI_ERR_DISP
	    -
     MPI_ERR_RANK
	    - Invalid source or destination rank.  Ranks must  be  between  zero
	    and  the  size  of	the communicator minus one; ranks in a receive (
	    MPI_Recv  ,  MPI_Irecv  ,  MPI_Sendrecv  ,	 etc.)	 may   also   be
	    MPI_ANY_SOURCE .

     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_WIN
	    - Invalid MPI window object
     MPI_ERR_OTHER
	    - Other error; use MPI_Error_string to get	more  information  about
	    this error code.

SEE ALSO
     MPI_Rput

				    4/10/2026			      MPI_Put(3)

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

home | help