File: MPI_File_set_info.3.rst

package info (click to toggle)
openmpi 5.0.8-10
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 201,692 kB
  • sloc: ansic: 613,078; makefile: 42,351; sh: 11,194; javascript: 9,244; f90: 7,052; java: 6,404; perl: 5,179; python: 1,859; lex: 740; fortran: 61; cpp: 20; tcl: 12
file content (143 lines) | stat: -rw-r--r-- 3,928 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
.. _mpi_file_set_info:


MPI_File_set_info
=================

.. include_body

:ref:`MPI_File_set_info` |mdash| Sets new values for hints (collective).


SYNTAX
------



C Syntax
^^^^^^^^

.. code-block:: c

   #include <mpi.h>

   int MPI_File_set_info(MPI_File fh, MPI_Info info)


Fortran Syntax
^^^^^^^^^^^^^^

.. code-block:: fortran

   USE MPI
   ! or the older form: INCLUDE 'mpif.h'
   MPI_FILE_SET_INFO(FH, INFO, IERROR)
   	INTEGER	FH, INFO, IERROR


Fortran 2008 Syntax
^^^^^^^^^^^^^^^^^^^

.. code-block:: fortran

   USE mpi_f08
   MPI_File_set_info(fh, info, ierror)
   	TYPE(MPI_File), INTENT(IN) :: fh
   	TYPE(MPI_Info), INTENT(IN) :: info
   	INTEGER, OPTIONAL, INTENT(OUT) :: ierror


INPUT/OUTPUT PARAMETER
----------------------
* ``fh``: File handle (handle).

INPUT PARAMETER
---------------
* ``info``: Info object (handle).

OUTPUT PARAMETER
----------------
* ``ierror``: Fortran only: Error status (integer).

DESCRIPTION
-----------

:ref:`MPI_File_set_info` is a collective routine that sets new values
for the hints of the file associated with *fh*. These hints are set
for each file, using the :ref:`MPI_File_open`, :ref:`MPI_File_delete`,
:ref:`MPI_File_set_view`, and :ref:`MPI_File_set_info` routines. The
opaque *info* object, which allows you to provide hints for
optimization of your code, may be different on each process, but some
*info* entries are required to be the same on all processes: In these
cases, they must appear with the same value in each process's info
object. See the :ref:`HINTS section <man-openmpi-mpi-file-set-info>`
for a list of hints that can be set.

.. _man-openmpi-mpi-file-set-info:

HINTS
-----

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

**SETTABLE HINTS**

* ``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.

  .. 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.

* ``noncoll_write_bufsize``: Maximum size of the buffer used by MPI
  I/O to satisfy write requests in the noncollective data-access
  routines.

  See the above note in ``noncoll_read_bufsize``.

* ``coll_read_bufsize``: Maximum size of the buffer used by MPI I/O to
  satisfy read requests in the collective data-access routines.

  See the above note in ``noncoll_read_bufsize``.

* ``coll_write_bufsize``: Maximum size of the buffer used by MPI I/O
  to satisfy write requests in the collective data-access
  routines.

  See the above note in ``noncoll_read_bufsize``.

* ``mpiio_concurrency``: (boolean) controls whether nonblocking I/O
  routines can bind an extra thread to an LWP.

* ``mpiio_coll_contiguous``: (boolean) controls whether subsequent
  collective data accesses will request collectively contiguous
  regions of the file.


  **NON-SETTABLE HINTS**

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


ERRORS
------

.. include:: ./ERRORS.rst