bionic (3) MPI_File_iwrite_at.openmpi.3.gz

Provided by: openmpi-doc_2.1.1-8_all bug

NAME

       MPI_File_iwrite_at - Writes a file at an explicitly specified offset (nonblocking, noncollective).

SYNTAX

C Syntax

       #include  <mpi.h> int MPI_File_iwrite_at(MPI_File fh, MPI_Offset offset,      const void *buf, int count,
       MPI_Datatype datatype, MPI_Request *request)

Fortran Syntax (see FORTRAN 77 NOTES)

       USE MPI
       ! or the older form: INCLUDE 'mpif.h'
       MPI_FILE_IWRITE_AT(FH, OFFSET, BUF, COUNT, DATATYPE, REQUEST, IERROR)
            <type>    BUF(*)
            INTEGER   FH, COUNT, DATATYPE, REQUEST, IERROR
            INTEGER(KIND=MPI_OFFSET_KIND) OFFSET

C++ Syntax

       #include <mpi.h>
       MPI::Request MPI::File::Iwrite_at(MPI::Offset offset, const void* buf,
            int count, const MPI::Datatype& datatype)

INPUT/OUTPUT PARAMETER

       fh        File handle (handle).

INPUT PARAMETERS

       offset    File offset (integer).

       buf       Initial address of buffer (choice).

       count     Number of elements in buffer (integer).

       datatype  Data type of each buffer element (handle).

OUTPUT PARAMETERS

       request   Request object (handle).

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       MPI_File_iwrite_at is a nonblocking version of MPI_File_write_at. It attempts  to  write  into  the  file
       associated  with fh (at the offset position) a total number of count data items having datatype type from
       the user's buffer buf.  The offset is in etype units relative to the current view. That is, holes are not
       counted  when  locating  an  offset.  The  data  is written into those parts of the file specified by the
       current view. MPI_File_iwrite_at stores the number of datatype elements actually written in status.   All
       other  fields of status are undefined. The request structure can be passed to MPI_Wait or MPI_Test, which
       will return a status with the number of bytes actually accessed.

       It is erroneous to call this function if MPI_MODE_SEQUENTIAL mode was specified when the file was open.

FORTRAN 77 NOTES

       The MPI standard prescribes portable Fortran syntax for the OFFSET argument only for Fortran 90.  FORTRAN
       77 users may use the non-portable syntax

            INTEGER*MPI_OFFSET_KIND OFFSET

       where  MPI_OFFSET_KIND  is  a  constant defined in mpif.h and gives the length of the declared integer in
       bytes.

ERRORS

       Almost all MPI routines return an error value; C routines as  the  value  of  the  function  and  Fortran
       routines in the last argument. C++ functions do not return errors. If the default error handler is set to
       MPI::ERRORS_THROW_EXCEPTIONS, then on error the  C++  exception  mechanism  will  be  used  to  throw  an
       MPI::Exception object.

       Before the error value is returned, the current MPI error handler is called. For MPI I/O function errors,
       the default  error  handler  is  set  to  MPI_ERRORS_RETURN.  The  error  handler  may  be  changed  with
       MPI_File_set_errhandler; the predefined error handler MPI_ERRORS_ARE_FATAL may be used to make I/O errors
       fatal. Note that MPI does not guarantee that an MPI program can continue past an error.