Open MPI logo

MPI_File_set_view(3) man page (version 1.3.4)

  |   Home   |   Support   |   FAQ   |  

« Return to documentation listing



NAME

       MPI_File_set_view  -  Changes  process's  view of data in file (collec-
       tive).

SYNTAX

       C Syntax
           #include <mpi.h>
           int MPI_File_set_view(MPI_File fh, MPI_Offset disp,
                  MPI_Datatype etype, MPI_Datatype filetype,
                  char *datarep, MPI_Info info)

       Fortran Syntax (see FORTRAN 77 NOTES)
           INCLUDE 'mpif.h'
           MPI_FILE_SET_VIEW(FH, DISP, ETYPE,
                   FILETYPE, DATAREP, INFO, IERROR)
             INTEGER FH, ETYPE, FILETYPE, INFO, IERROR
             CHARACTER*(*) DATAREP
             INTEGER(KIND=MPI_OFFSET_KIND) DISP

C++ Syntax

       #include <mpi.h>
       void MPI::File::Set_view(MPI::Offset disp,
            const MPI::Datatype& etype,
            const MPI::Datatype& filetype, const char* datarep,
            const MPI::Info& info)

INPUT/OUTPUT PARAMETER

       fh        File handle (handle).

INPUT PARAMETERS

       disp      Displacement (integer).

       etype     Elementary data type (handle).

       filetype  File type (handle). See Restrictions, below.

       datarep   Data representation (string).

       info      Info object (handle).

OUTPUT PARAMETER

       IERROR    Fortran only: Error status (integer).

DESCRIPTION

       The MPI_File_set_view routine changes the process's view of the data in
       the  file  --  the beginning of the data accessible in the file through
       that view is set to disp; the type of data is set  to  etype;  and  the
       distribution  of  data  to  processes is set to filetype.  In addition,
       MPI_File_set_view resets the independent file pointers and  the  shared
       file pointer to zero. MPI_File_set_view is collective; all processes in
       the group must pass identical values for fh and etype; values for disp,
       filetype,  and  info  may  vary. It is erroneous to use the shared file
       pointer data-access routines unless identical values for disp and file-
       default value (or "native"), pass NULL. The user can also pass informa-
       tion via the info argument. See the HINTS section for a list  of  hints
       that can be set. For more information, see the MPI-2 standard.

HINTS

       The following hints can be used as values for the info argument.

       SETTABLE HINTS:

       - MPI_INFO_NULL

       -  shared_file_timeout:  Amount of time (in seconds) to wait for access
       to the shared file pointer before exiting with MPI_ERR_TIMEDOUT.

       - rwlock_timeout: Amount of time (in seconds) to wait for  obtaining  a
       read  or write lock on a contiguous chunk of a UNIX file before exiting
       with MPI_ERR_TIMEDOUT.

       - noncoll_read_bufsize:  Maximum size of the buffer used by MPI I/O  to
       satisfy  read  requests in the noncollective data-access routines. (See
       NOTE, below.)

       - noncoll_write_bufsize: Maximum size of the buffer used by MPI I/O  to
       satisfy  write requests in the noncollective data-access routines. (See
       NOTE, below.)

       - coll_read_bufsize:  Maximum size of the buffer used  by  MPI  I/O  to
       satisfy  read  requests  in  the  collective data-access routines. (See
       NOTE, below.)

       - coll_write_bufsize:  Maximum size of the buffer used by  MPI  I/O  to
       satisfy  write  requests  in  the collective data-access routines. (See
       NOTE, below.)

       NOTE: A buffer size smaller than the distance (in bytes) in a UNIX file
       between  the  first byte and the last byte of the access request causes
       MPI I/O to iterate and perform multiple UNIX read() or  write()  calls.
       If  the request includes multiple noncontiguous chunks of data, and the
       buffer size is greater than the size of those  chunks,  then  the  UNIX
       read()  or  write()  (made  at  the MPI I/O level) will access data not
       requested by this process in  order  to  reduce  the  total  number  of
       write()  calls  made.  If  this  is  not desirable behavior, you should
       reduce this buffer size to equal the  size  of  the  contiguous  chunks
       within the aggregate request.

       -  mpiio_concurrency:  (boolean)  controls whether nonblocking I/O rou-
       tines can bind an extra thread to an LWP.

       - mpiio_coll_contiguous: (boolean) controls whether subsequent  collec-
       tive  data accesses will request collectively contiguous regions of the
       file.

       NON-SETTABLE HINTS:

       - filename: Access this hint to get the name of the file.

       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++  func-
       tions  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.

1.3.4                            Nov 11, 2009             MPI_File_set_view(3)

« Return to documentation listing