Blame www/www3/MPI_Pack.html

Packit 0848f5
Packit 0848f5
<HTML>
Packit 0848f5
<HEAD>
Packit 0848f5
<META NAME="GENERATOR" CONTENT="DOCTEXT">
Packit 0848f5
<TITLE>MPI_Pack</TITLE>
Packit 0848f5
</HEAD>
Packit 0848f5
<BODY BGCOLOR="FFFFFF">
Packit 0848f5

MPI_Pack

Packit 0848f5
Packs a datatype into contiguous memory 
Packit 0848f5

Synopsis

Packit 0848f5
Packit 0848f5
int MPI_Pack(const void *inbuf,
Packit 0848f5
             int incount,
Packit 0848f5
             MPI_Datatype datatype,
Packit 0848f5
             void *outbuf,
Packit 0848f5
             int outsize,
Packit 0848f5
             int *position,
Packit 0848f5
             MPI_Comm comm)
Packit 0848f5
Packit 0848f5

Input Parameters

Packit 0848f5
Packit 0848f5
inbuf
input buffer start (choice)
Packit 0848f5
Packit 0848f5
incount
number of input data items (non-negative integer)
Packit 0848f5
Packit 0848f5
datatype
datatype of each input data item (handle)
Packit 0848f5
Packit 0848f5
outsize
output buffer size, in bytes (non-negative integer)
Packit 0848f5
Packit 0848f5
comm
communicator for packed message (handle)
Packit 0848f5
Packit 0848f5

Packit 0848f5

Output Parameters

Packit 0848f5
outbuf
output buffer start (choice)
Packit 0848f5
Packit 0848f5

Packit 0848f5

Input/Output Parameters

Packit 0848f5
position
current position in buffer, in bytes (integer)
Packit 0848f5
Packit 0848f5

Packit 0848f5

Notes (from the specifications)

Packit 0848f5

Packit 0848f5
The input value of position is the first location in the output buffer to be
Packit 0848f5
used for packing.  position is incremented by the size of the packed message,
Packit 0848f5
and the output value of position is the first location in the output buffer
Packit 0848f5
following the locations occupied by the packed message.  The comm argument is
Packit 0848f5
the communicator that will be subsequently used for sending the packed
Packit 0848f5
message.
Packit 0848f5

Packit 0848f5

Packit 0848f5

Notes for Fortran

Packit 0848f5
All MPI routines in Fortran (except for <tt>MPI_WTIME</tt> and <tt>MPI_WTICK</tt>) have
Packit 0848f5
an additional argument <tt>ierr</tt> at the end of the argument list.  <tt>ierr
Packit 0848f5
</tt>is an integer and has the same meaning as the return value of the routine
Packit 0848f5
in C.  In Fortran, MPI routines are subroutines, and are invoked with the
Packit 0848f5
<tt>call</tt> statement.
Packit 0848f5

Packit 0848f5
All MPI objects (e.g., <tt>MPI_Datatype</tt>, <tt>MPI_Comm</tt>) are of type <tt>INTEGER
Packit 0848f5
</tt>in Fortran.
Packit 0848f5

Packit 0848f5

Errors

Packit 0848f5

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

Packit 0848f5
MPI_SUCCESS
No error; MPI routine completed successfully.
Packit 0848f5
Packit 0848f5
MPI_ERR_ARG
Invalid argument. Some argument is invalid and is not
Packit 0848f5
identified by a specific error class (e.g., <tt>MPI_ERR_RANK</tt>).
Packit 0848f5
Packit 0848f5
MPI_ERR_OTHER
Other error; use <tt>MPI_Error_string</tt> to get more information
Packit 0848f5
about this error code. 
Packit 0848f5
Packit 0848f5
</BODY></HTML>