NewMadeleine

Documentation

« back to PM2 home.
mpif.h
Go to the documentation of this file.
1! -*-Fortran-*-
2!
3! NewMadeleine
4! Copyright (C) 2006-2016 (see AUTHORS file)
5!
6! This program is free software; you can redistribute it and/or modify
7! it under the terms of the GNU General Public License as published by
8! the Free Software Foundation; either version 2 of the License, or (at
9! your option) any later version.
10!
11! This program is distributed in the hope that it will be useful, but
12! WITHOUT ANY WARRANTY; without even the implied warranty of
13! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14! General Public License for more details.
15!
16
17!
18! mpif.h
19! =====
20!
21! Constants mirrored from nm_mpi_types.h
22!
23 INTEGER MPI_BSEND_OVERHEAD
24 PARAMETER (MPI_BSEND_OVERHEAD = 0)
25! Communications
26 INTEGER MPI_PROC_NULL
27 INTEGER MPI_ANY_SOURCE
28 INTEGER MPI_ROOT
29 PARAMETER (MPI_PROC_NULL = -1)
30 PARAMETER (MPI_ANY_SOURCE = -2)
31 PARAMETER (MPI_ROOT = -3)
32!
33 INTEGER MPI_ANY_TAG
34 PARAMETER (MPI_ANY_TAG = -1)
35! Status
36 INTEGER MPI_SUCCESS
37 INTEGER MPI_ERR_BUFFER
38 INTEGER MPI_ERR_COUNT
39 INTEGER MPI_ERR_TYPE
40 INTEGER MPI_ERR_TAG
41 INTEGER MPI_ERR_COMM
42 INTEGER MPI_ERR_RANK
43 INTEGER MPI_ERR_ROOT
44 INTEGER MPI_ERR_GROUP
45 INTEGER MPI_ERR_OP
46 INTEGER MPI_ERR_TOPOLOGY
47 INTEGER MPI_ERR_DIMS
48 INTEGER MPI_ERR_ARG
49 INTEGER MPI_ERR_UNKNOWN
50 INTEGER MPI_ERR_TRUNCATE
51 INTEGER MPI_ERR_OTHER
52 INTEGER MPI_ERR_INTERN
53 INTEGER MPI_ERR_IN_STATUS
54 INTEGER MPI_ERR_PENDING
55 INTEGER MPI_ERR_INFO
56 INTEGER MPI_ERR_NO_MEM
57 INTEGER MPI_ERR_REQUEST
58 INTEGER MPI_ERR_KEYVAL
59 INTEGER MPI_ERR_INFO_KEY
60 INTEGER MPI_ERR_INFO_VALUE
61 INTEGER MPI_ERR_INFO_NOKEY
62 INTEGER MPI_ERR_FILE
63 INTEGER MPI_ERR_IO
64 INTEGER MPI_ERR_AMODE
67 INTEGER MPI_ERR_READ_ONLY
68 INTEGER MPI_ERR_ACCESS
71 INTEGER MPI_ERR_NOT_SAME
72 INTEGER MPI_ERR_BAD_FILE
73 INTEGER MPI_ERR_WIN
74 INTEGER MPI_ERR_BASE
75 INTEGER MPI_ERR_SIZE
76 INTEGER MPI_ERR_DISP
77 INTEGER MPI_ERR_LOCKTYPE
78 INTEGER MPI_ERR_ASSERT
80 INTEGER MPI_ERR_RMA_SYNC
81 INTEGER MPI_ERR_RMA_RANGE
82 INTEGER MPI_ERR_RMA_ATTACH
83 INTEGER MPI_ERR_RMA_SHARED
84 INTEGER MPI_ERR_RMA_FLAVOR
85 INTEGER MPI_ERR_LASTCODE
86 PARAMETER (MPI_SUCCESS = 0)
87 PARAMETER (MPI_ERR_BUFFER = 1)
88 PARAMETER (MPI_ERR_COUNT = 2)
89 PARAMETER (MPI_ERR_TYPE = 3)
90 PARAMETER (MPI_ERR_TAG = 4)
91 PARAMETER (MPI_ERR_COMM = 5)
92 PARAMETER (MPI_ERR_RANK = 6)
93 PARAMETER (MPI_ERR_ROOT = 7)
94 PARAMETER (MPI_ERR_GROUP = 8)
95 PARAMETER (MPI_ERR_OP = 9)
96 PARAMETER (MPI_ERR_TOPOLOGY = 10)
97 PARAMETER (MPI_ERR_DIMS = 11)
98 PARAMETER (MPI_ERR_ARG = 12)
99 PARAMETER (MPI_ERR_UNKNOWN = 13)
100 PARAMETER (MPI_ERR_TRUNCATE = 14)
101 PARAMETER (MPI_ERR_OTHER = 15)
102 PARAMETER (MPI_ERR_INTERN = 16)
103 PARAMETER (MPI_ERR_IN_STATUS = 17)
104 PARAMETER (MPI_ERR_PENDING = 18)
105 PARAMETER (MPI_ERR_INFO = 19)
106 PARAMETER (MPI_ERR_NO_MEM = 20)
107 PARAMETER (MPI_ERR_REQUEST = 32)
108 PARAMETER (MPI_ERR_KEYVAL = 33)
109 PARAMETER (MPI_ERR_INFO_KEY = 34)
110 PARAMETER (MPI_ERR_INFO_VALUE = 35)
111 PARAMETER (MPI_ERR_INFO_NOKEY = 36)
112 PARAMETER (MPI_ERR_FILE = 64)
113 PARAMETER (MPI_ERR_IO = 65)
114 PARAMETER (MPI_ERR_AMODE = 66)
115 PARAMETER (MPI_ERR_UNSUPPORTED_OPERATION = 67)
116 PARAMETER (MPI_ERR_UNSUPPORTED_DATAREP = 68)
117 PARAMETER (MPI_ERR_READ_ONLY = 69)
118 PARAMETER (MPI_ERR_ACCESS = 70)
119 PARAMETER (MPI_ERR_DUP_DATAREP = 71)
120 PARAMETER (MPI_ERR_NO_SUCH_FILE = 72)
121 PARAMETER (MPI_ERR_NOT_SAME = 73)
122 PARAMETER (MPI_ERR_BAD_FILE = 74)
123 PARAMETER (MPI_ERR_WIN = 92)
124 PARAMETER (MPI_ERR_BASE = 93)
125 PARAMETER (MPI_ERR_SIZE = 94)
126 PARAMETER (MPI_ERR_DISP = 96)
127 PARAMETER (MPI_ERR_LOCKTYPE = 97)
128 PARAMETER (MPI_ERR_ASSERT = 98)
129 PARAMETER (MPI_ERR_RMA_CONFLICT = 99)
130 PARAMETER (MPI_ERR_RMA_SYNC = 100)
131 PARAMETER (MPI_ERR_RMA_RANGE = 101)
132 PARAMETER (MPI_ERR_RMA_ATTACH = 102)
133 PARAMETER (MPI_ERR_RMA_SHARED = 103)
134 PARAMETER (MPI_ERR_RMA_FLAVOR = 104)
135 PARAMETER (MPI_ERR_LASTCODE = 128)
136!
137 INTEGER MPI_UNDEFINED
138 PARAMETER (MPI_UNDEFINED = -2147483647)
139!
140 INTEGER MPI_THREAD_SINGLE
141 INTEGER MPI_THREAD_FUNNELED
143 INTEGER MPI_THREAD_MULTIPLE
144 PARAMETER (MPI_THREAD_SINGLE = 0)
145 PARAMETER (MPI_THREAD_FUNNELED = 1)
146 PARAMETER (MPI_THREAD_SERIALIZED = 2)
147 PARAMETER (MPI_THREAD_MULTIPLE = 3)
148! Info
149 INTEGER MPI_INFO_NULL
150 PARAMETER (MPI_INFO_NULL = 0)
151!
152 INTEGER MPI_MAX_INFO_KEY
153 INTEGER MPI_MAX_INFO_VAL
154 PARAMETER (MPI_MAX_INFO_KEY = 255 - 1)
155 PARAMETER (MPI_MAX_INFO_VAL = 1024 - 1)
156! Abstract types
157 INTEGER MPI_STATUS_SIZE
158 PARAMETER (MPI_STATUS_SIZE = 5)
159! Request accessors
160 INTEGER MPI_SOURCE
161 INTEGER MPI_TAG
162 INTEGER MPI_ERROR
163 PARAMETER (MPI_SOURCE = 1)
164 PARAMETER (MPI_TAG = 2)
165 PARAMETER (MPI_ERROR = 3)
166!
167 INTEGER MPI_REQUEST_NULL
168 PARAMETER (MPI_REQUEST_NULL = 0)
169!
170 INTEGER MPI_MESSAGE_NULL
171 PARAMETER (MPI_MESSAGE_NULL = 0)
172!
173 INTEGER MPI_GROUP_NULL
174 INTEGER MPI_GROUP_EMPTY
175 PARAMETER (MPI_GROUP_NULL = 0)
176 PARAMETER (MPI_GROUP_EMPTY = 1)
177! Comparison
179 PARAMETER (MPI_IDENT = 1)
180 PARAMETER (MPI_SIMILAR = 2)
181 PARAMETER (MPI_CONGRUENT = 3)
182 PARAMETER (MPI_UNEQUAL = 4)
183! Communicators
184 INTEGER MPI_COMM_NULL
185 INTEGER MPI_COMM_WORLD
186 INTEGER MPI_COMM_SELF
187 PARAMETER (MPI_COMM_NULL = 0)
188 PARAMETER (MPI_COMM_WORLD = 1)
189 PARAMETER (MPI_COMM_SELF = 2)
190!
192 PARAMETER (MPI_COMM_TYPE_SHARED = 1)
193!
194 INTEGER MPI_GRAPH
195 INTEGER MPI_CART
196 PARAMETER (MPI_GRAPH = INT(Z'0001'))
197 PARAMETER (MPI_CART = INT(Z'0002'))
199 INTEGER MPI_DATATYPE_NULL
200 INTEGER MPI_CHAR
201 INTEGER MPI_UNSIGNED_CHAR
202 INTEGER MPI_SIGNED_CHAR
203 INTEGER MPI_BYTE
204 INTEGER MPI_SHORT
205 INTEGER MPI_UNSIGNED_SHORT
206 INTEGER MPI_INT
207 INTEGER MPI_UNSIGNED
208 INTEGER MPI_LONG
209 INTEGER MPI_UNSIGNED_LONG
210 INTEGER MPI_FLOAT
211 INTEGER MPI_DOUBLE
212 INTEGER MPI_LONG_DOUBLE
213 INTEGER MPI_LONG_LONG_INT
214 INTEGER MPI_LONG_LONG
216 PARAMETER (MPI_DATATYPE_NULL = 0)
217 PARAMETER (MPI_CHAR = 1)
218 PARAMETER (MPI_UNSIGNED_CHAR = 2)
219 PARAMETER (MPI_SIGNED_CHAR = 3)
220 PARAMETER (MPI_BYTE = 4)
221 PARAMETER (MPI_SHORT = 5)
222 PARAMETER (MPI_UNSIGNED_SHORT = 6)
223 PARAMETER (MPI_INT = 7)
224 PARAMETER (MPI_UNSIGNED = 8)
225 PARAMETER (MPI_LONG = 9)
226 PARAMETER (MPI_UNSIGNED_LONG = 10)
227 PARAMETER (MPI_FLOAT = 11)
228 PARAMETER (MPI_DOUBLE = 12)
229 PARAMETER (MPI_LONG_DOUBLE = 13)
230 PARAMETER (MPI_LONG_LONG_INT = 14)
231 PARAMETER (MPI_LONG_LONG = MPI_LONG_LONG_INT)
232 PARAMETER (MPI_UNSIGNED_LONG_LONG = 15)
233! Fortran types
234 INTEGER MPI_CHARACTER
235 INTEGER MPI_LOGICAL
236 INTEGER MPI_REAL
237 INTEGER MPI_REAL2
238 INTEGER MPI_REAL4
239 INTEGER MPI_REAL8
240 INTEGER MPI_REAL16
242 INTEGER MPI_INTEGER
243 INTEGER MPI_INTEGER1
244 INTEGER MPI_INTEGER2
245 INTEGER MPI_INTEGER4
246 INTEGER MPI_INTEGER8
247 INTEGER MPI_INTEGER16
248 INTEGER MPI_COMPLEX
249 INTEGER MPI_COMPLEX4
250 INTEGER MPI_COMPLEX8
251 INTEGER MPI_COMPLEX16
252 INTEGER MPI_COMPLEX32
253 INTEGER MPI_DOUBLE_COMPLEX
254 INTEGER MPI_PACKED
255 PARAMETER (MPI_CHARACTER = 16)
256 PARAMETER (MPI_LOGICAL = 17)
257 PARAMETER (MPI_REAL = 18)
258 PARAMETER (MPI_REAL2 = 19)
259 PARAMETER (MPI_REAL4 = 20)
260 PARAMETER (MPI_REAL8 = 21)
261 PARAMETER (MPI_REAL16 = 22)
262 PARAMETER (MPI_DOUBLE_PRECISION = 23)
263 PARAMETER (MPI_INTEGER = 24)
264 PARAMETER (MPI_INTEGER1 = 25)
265 PARAMETER (MPI_INTEGER2 = 26)
266 PARAMETER (MPI_INTEGER4 = 27)
267 PARAMETER (MPI_INTEGER8 = 28)
268 PARAMETER (MPI_INTEGER16 = 29)
269 PARAMETER (MPI_COMPLEX = 30)
270 PARAMETER (MPI_COMPLEX4 = 31)
271 PARAMETER (MPI_COMPLEX8 = 32)
272 PARAMETER (MPI_COMPLEX16 = 33)
273 PARAMETER (MPI_COMPLEX32 = 34)
274 PARAMETER (MPI_DOUBLE_COMPLEX = 35)
275 PARAMETER (MPI_PACKED = 36)
276!
277 INTEGER MPI_LONG_INT
278 INTEGER MPI_SHORT_INT
279 INTEGER MPI_FLOAT_INT
280 INTEGER MPI_DOUBLE_INT
281 INTEGER MPI_LONG_DOUBLE_INT
282 PARAMETER (MPI_LONG_INT = 37)
283 PARAMETER (MPI_SHORT_INT = 38)
284 PARAMETER (MPI_FLOAT_INT = 39)
285 PARAMETER (MPI_DOUBLE_INT = 40)
286 PARAMETER (MPI_LONG_DOUBLE_INT = 41)
287!
288 INTEGER MPI_2INT
289 INTEGER MPI_2INTEGER
290 INTEGER MPI_2REAL
292 PARAMETER (MPI_2INT = 42)
293 PARAMETER (MPI_2INTEGER = 43)
294 PARAMETER (MPI_2REAL = 44)
295 PARAMETER (MPI_2DOUBLE_PRECISION = 45)
296!
297 INTEGER MPI_UB
298 INTEGER MPI_LB
299 PARAMETER (MPI_UB = 46)
300 PARAMETER (MPI_LB = 47)
301!
302 INTEGER MPI_INT8_T
303 INTEGER MPI_INT16_T
304 INTEGER MPI_INT32_T
305 INTEGER MPI_INT64_T
306 INTEGER MPI_UINT8_T
307 INTEGER MPI_UINT16_T
308 INTEGER MPI_UINT32_T
309 INTEGER MPI_UINT64_T
310 INTEGER MPI_AINT
311 INTEGER MPI_OFFSET
312 INTEGER MPI_C_BOOL
313 INTEGER MPI_C_COMPLEX
314 INTEGER MPI_C_FLOAT_COMPLEX
317 INTEGER MPI_WCHAR
318 PARAMETER (MPI_INT8_T = 48)
319 PARAMETER (MPI_INT16_T = 49)
320 PARAMETER (MPI_INT32_T = 50)
321 PARAMETER (MPI_INT64_T = 51)
322 PARAMETER (MPI_UINT8_T = 52)
323 PARAMETER (MPI_UINT16_T = 53)
324 PARAMETER (MPI_UINT32_T = 54)
325 PARAMETER (MPI_UINT64_T = 55)
326 PARAMETER (MPI_AINT = 56)
327 PARAMETER (MPI_OFFSET = 57)
328 PARAMETER (MPI_C_BOOL = 58)
329 PARAMETER (MPI_C_FLOAT_COMPLEX = 59)
331 PARAMETER (MPI_C_DOUBLE_COMPLEX = 60)
332 PARAMETER (MPI_C_LONG_DOUBLE_COMPLEX = 61)
333 PARAMETER (MPI_WCHAR = 62)
334!
335 INTEGER MPI_COUNT
336 PARAMETER (MPI_COUNT = 63)
337!
338 INTEGER MPI_CXX_BOOL
342 PARAMETER (MPI_CXX_BOOL = MPI_DATATYPE_NULL)
346!
347 INTEGER MPI_COMBINER_NAMED
349 INTEGER MPI_COMBINER_VECTOR
353 INTEGER MPI_COMBINER_STRUCT
355 INTEGER MPI_COMBINER_DUP
359 PARAMETER (MPI_COMBINER_NAMED = 0)
360 PARAMETER (MPI_COMBINER_CONTIGUOUS = 1)
361 PARAMETER (MPI_COMBINER_VECTOR = 2)
362 PARAMETER (MPI_COMBINER_HVECTOR = 3)
363 PARAMETER (MPI_COMBINER_INDEXED = 4)
364 PARAMETER (MPI_COMBINER_HINDEXED = 5)
365 PARAMETER (MPI_COMBINER_STRUCT = 6)
366 PARAMETER (MPI_COMBINER_RESIZED = 7)
367 PARAMETER (MPI_COMBINER_DUP = 8)
368 PARAMETER (MPI_COMBINER_INDEXED_BLOCK = 9)
369 PARAMETER (MPI_COMBINER_HINDEXED_BLOCK = 10)
370 PARAMETER (MPI_COMBINER_SUBARRAY = 11)
371!
372 INTEGER MPI_ORDER_C
373 INTEGER MPI_ORDER_FORTRAN
374 PARAMETER (MPI_ORDER_C = 1)
375 PARAMETER (MPI_ORDER_FORTRAN = 2)
376!
379 INTEGER MPI_DISTRIBUTE_NONE
381 PARAMETER (MPI_DISTRIBUTE_BLOCK = 1)
382 PARAMETER (MPI_DISTRIBUTE_CYCLIC = 2)
383 PARAMETER (MPI_DISTRIBUTE_NONE = 3)
384 PARAMETER (MPI_DISTRIBUTE_DFLT_DARG = 4)
385! Operators
386 INTEGER MPI_OP_NULL
387 INTEGER MPI_MAX
388 INTEGER MPI_MIN
389 INTEGER MPI_SUM
390 INTEGER MPI_PROD
391 INTEGER MPI_LAND
392 INTEGER MPI_BAND
393 INTEGER MPI_LOR
394 INTEGER MPI_BOR
395 INTEGER MPI_LXOR
396 INTEGER MPI_BXOR
397 INTEGER MPI_MINLOC
398 INTEGER MPI_MAXLOC
399 INTEGER MPI_REPLACE
400 INTEGER MPI_NO_OP
401 PARAMETER (MPI_OP_NULL = 0)
402 PARAMETER (MPI_MAX = 1)
403 PARAMETER (MPI_MIN = 2)
404 PARAMETER (MPI_SUM = 3)
405 PARAMETER (MPI_PROD = 4)
406 PARAMETER (MPI_LAND = 5)
407 PARAMETER (MPI_BAND = 6)
408 PARAMETER (MPI_LOR = 7)
409 PARAMETER (MPI_BOR = 8)
410 PARAMETER (MPI_LXOR = 9)
411 PARAMETER (MPI_BXOR = 10)
412 PARAMETER (MPI_MINLOC = 11)
413 PARAMETER (MPI_MAXLOC = 12)
414 PARAMETER (MPI_REPLACE = 13)
415 PARAMETER (MPI_NO_OP = 14)
416! String sizes
419 INTEGER MPI_MAX_NAME_STRING
420 INTEGER MPI_MAX_OBJECT_NAME
422 PARAMETER (MPI_MAX_PROCESSOR_NAME = 256 - 1)
423 PARAMETER (MPI_MAX_ERROR_STRING = 512 - 1)
424 PARAMETER (MPI_MAX_NAME_STRING = 256 - 1)
425 PARAMETER (MPI_MAX_OBJECT_NAME = 256 - 1)
426 PARAMETER (MPI_MAX_LIBRARY_VERSION_STRING = 256 - 1)
427!
428 INTEGER MPI_WIN_NULL
429 PARAMETER (MPI_WIN_NULL = 0)
430!
431 !INTEGER MPI_MODE_NO_ASSERT
432 INTEGER MPI_MODE_NOCHECK
433 INTEGER MPI_MODE_NOSTORE
434 INTEGER MPI_MODE_NOPUT
435 INTEGER MPI_MODE_NOPRECEDE
436 INTEGER MPI_MODE_NOSUCCEED
437 !PARAMETER (MPI_MODE_NO_ASSERT = INT(Z'0000'))
438 PARAMETER (MPI_MODE_NOCHECK = INT(Z'0001'))
439 PARAMETER (MPI_MODE_NOSTORE = INT(Z'0002'))
440 PARAMETER (MPI_MODE_NOPUT = INT(Z'0004'))
441 PARAMETER (MPI_MODE_NOPRECEDE = INT(Z'0008'))
442 PARAMETER (MPI_MODE_NOSUCCEED = INT(Z'0010'))
443!
448 PARAMETER (MPI_WIN_FLAVOR_CREATE = 0)
449 PARAMETER (MPI_WIN_FLAVOR_ALLOCATE = 1)
450 PARAMETER (MPI_WIN_FLAVOR_DYNAMIC = 2)
451 PARAMETER (MPI_WIN_FLAVOR_SHARED = 3)
452!
453 INTEGER MPI_WIN_BASE
454 INTEGER MPI_WIN_SIZE
455 INTEGER MPI_WIN_DISP_UNIT
457 INTEGER MPI_WIN_MODEL
458 PARAMETER (MPI_WIN_BASE = 0)
459 PARAMETER (MPI_WIN_SIZE = 1)
460 PARAMETER (MPI_WIN_DISP_UNIT = 2)
461 PARAMETER (MPI_WIN_CREATE_FLAVOR = 3)
462 PARAMETER (MPI_WIN_MODEL = 4)
463!
464 INTEGER MPI_WIN_SEPARATE
465 INTEGER MPI_WIN_UNIFIED
466 PARAMETER (MPI_WIN_SEPARATE = 0)
467 PARAMETER (MPI_WIN_UNIFIED = 1)
468!
469 INTEGER MPI_LOCK_EXCLUSIVE
470 INTEGER MPI_LOCK_SHARED
471 PARAMETER (MPI_LOCK_EXCLUSIVE = 1)
472 PARAMETER (MPI_LOCK_SHARED = 2)
473! Error handlers
474 INTEGER MPI_ERRHANDLER_NULL
476 INTEGER MPI_ERRORS_RETURN
477 PARAMETER (MPI_ERRHANDLER_NULL = 0)
478 PARAMETER (MPI_ERRORS_ARE_FATAL = 1)
479 PARAMETER (MPI_ERRORS_RETURN = 2)
480! Communicator attributes
481 INTEGER MPI_KEYVAL_INVALID
482 INTEGER MPI_TAG_UB
483 INTEGER MPI_HOST
484 INTEGER MPI_IO
485 INTEGER MPI_WTIME_IS_GLOBAL
486 INTEGER MPI_UNIVERSE_SIZE
487 INTEGER MPI_APPNUM
488 INTEGER MPI_LASTUSEDCODE
489 PARAMETER (MPI_KEYVAL_INVALID = 0)
490 PARAMETER (MPI_TAG_UB = 1)
491 PARAMETER (MPI_HOST = 2)
492 PARAMETER (MPI_IO = 3)
493 PARAMETER (MPI_WTIME_IS_GLOBAL = 4)
494 PARAMETER (MPI_UNIVERSE_SIZE = 5)
495 PARAMETER (MPI_APPNUM = 6)
496 PARAMETER (MPI_LASTUSEDCODE = 7)
497!
498! Constants mirrored from nm_mpi_io.h
499!
500 INTEGER MPI_FILE_NULL
501 PARAMETER (MPI_FILE_NULL = 0)
502!
503 INTEGER MPI_MODE_RDONLY
504 INTEGER MPI_MODE_RDWR
505 INTEGER MPI_MODE_WRONLY
506 INTEGER MPI_MODE_CREATE
507 INTEGER MPI_MODE_EXCL
508 INTEGER MPI_MODE_APPEND
511 INTEGER MPI_MODE_SEQUENTIAL
512 PARAMETER (MPI_MODE_RDONLY = INT(Z'0001'))
513 PARAMETER (MPI_MODE_RDWR = INT(Z'0002'))
514 PARAMETER (MPI_MODE_WRONLY = INT(Z'0004'))
515 PARAMETER (MPI_MODE_CREATE = INT(Z'0008'))
516 PARAMETER (MPI_MODE_EXCL = INT(Z'0010'))
517 PARAMETER (MPI_MODE_APPEND = INT(Z'0020'))
518 PARAMETER (MPI_MODE_DELETE_ON_CLOSE = INT(Z'0100'))
519 PARAMETER (MPI_MODE_UNIQUE_OPEN = INT(Z'0200'))
520 PARAMETER (MPI_MODE_SEQUENTIAL = INT(Z'0400'))
521!
522 INTEGER MPI_SEEK_SET
523 INTEGER MPI_SEEK_CUR
524 INTEGER MPI_SEEK_END
525 PARAMETER (MPI_SEEK_SET = INT(Z'0001'))
526 PARAMETER (MPI_SEEK_CUR = INT(Z'0002'))
527 PARAMETER (MPI_SEEK_END = INT(Z'0004'))
528!
530 PARAMETER (MPI_MAX_DATAREP_STRING = 256 - 1)
531!
532! Constants mirrored from nm_mpi_config.h
533!
534 INTEGER MPI_VERSION
535 INTEGER MPI_SUBVERSION
536 PARAMETER (MPI_VERSION = 3)
537 PARAMETER (MPI_SUBVERSION = 0)
538!
539! Fortran specific
540!
541 INTEGER MPI_ADDRESS_KIND
542 INTEGER MPI_OFFSET_KIND
543 INTEGER MPI_COUNT_KIND
544 INTEGER MPI_INTEGER_KIND
545 PARAMETER (MPI_ADDRESS_KIND = 8)
546 PARAMETER (MPI_OFFSET_KIND = 8)
547 PARAMETER (MPI_COUNT_KIND = 8)
548 PARAMETER (MPI_INTEGER_KIND = 4)
549! Timing routines
550 DOUBLE PRECISION MPI_WTIME
551 DOUBLE PRECISION MPI_WTICK
552 EXTERNAL MPI_WTIME
553 EXTERNAL MPI_WTICK
554!
555 LOGICAL MPI_SUBARRAYS_SUPPORTED
556 LOGICAL MPI_ASYNC_PROTECTS_NONBLOCKING
557 PARAMETER (MPI_SUBARRAYS_SUPPORTED = .FALSE.)
558 PARAMETER (MPI_ASYNC_PROTECTS_NONBLOCKING = .FALSE.)
559! Buffer Address Constants
560 INTEGER MPI_BOTTOM
561 INTEGER MPI_IN_PLACE
562! Constants Specifying Empty or Ignored Input
563 INTEGER MPI_UNWEIGHTED(1)
564 INTEGER MPI_WEIGHTS_EMPTY(1)
565 INTEGER MPI_ERRCODES_IGNORE(1)
568 CHARACTER*1 MPI_ARGVS_NULL(1,1)
569 CHARACTER*1 MPI_ARGV_NULL(1)
570!
571 COMMON/MPI_FORTRAN_BOTTOM/MPI_BOTTOM
572 COMMON/MPI_FORTRAN_IN_PLACE/MPI_IN_PLACE
573 COMMON/MPI_FORTRAN_UNWEIGHTED/MPI_UNWEIGHTED
574 COMMON/MPI_FORTRAN_WEIGHTS_EMPTY/MPI_WEIGHTS_EMPTY
575 COMMON/MPI_FORTRAN_ERRCODES_IGNORE/MPI_ERRCODES_IGNORE
576 COMMON/MPI_FORTRAN_STATUSES_IGNORE/MPI_STATUSES_IGNORE
577 COMMON/MPI_FORTRAN_STATUS_IGNORE/MPI_STATUS_IGNORE
578 COMMON/MPI_FORTRAN_ARGVS_NULL/MPI_ARGVS_NULL
579 COMMON/MPI_FORTRAN_ARGV_NULL/MPI_ARGV_NULL
either version of the License
Definition mpif.h:8
without even the implied warranty of !MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU !General Public License for more details !mpif MPI_CONGRUENT
Definition mpif.h:178
you can redistribute it and or modify !it under the terms of the GNU General Public License as published by !the Free Software Foundation
Definition mpif.h:8
without even the implied warranty of !MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU !General Public License for more details !mpif MPI_SIMILAR
Definition mpif.h:178
either version of the or(at ! your option) any later version. ! ! This program is distributed in the hope that it will be useful
either version of the but !WITHOUT ANY WARRANTY
Definition mpif.h:12
without even the implied warranty of !MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU !General Public License for more details !mpif h
Definition mpif.h:19
#define MPI_VERSION
#define MPI_SUBVERSION
#define MPI_MODE_RDONLY
Definition nm_mpi_io.h:44
#define MPI_SEEK_SET
Definition nm_mpi_io.h:57
#define MPI_MODE_APPEND
Definition nm_mpi_io.h:49
#define MPI_MODE_SEQUENTIAL
Definition nm_mpi_io.h:52
#define MPI_MODE_WRONLY
Definition nm_mpi_io.h:46
#define MPI_FILE_NULL
Definition nm_mpi_io.h:32
#define MPI_MODE_UNIQUE_OPEN
Definition nm_mpi_io.h:51
#define MPI_MODE_EXCL
Definition nm_mpi_io.h:48
#define MPI_SEEK_CUR
Definition nm_mpi_io.h:58
#define MPI_MODE_RDWR
Definition nm_mpi_io.h:45
#define MPI_MODE_DELETE_ON_CLOSE
Definition nm_mpi_io.h:50
#define MPI_MODE_CREATE
Definition nm_mpi_io.h:47
#define MPI_SEEK_END
Definition nm_mpi_io.h:59
#define MPI_MAX_DATAREP_STRING
Definition nm_mpi_io.h:62
#define MPI_ARGV_NULL
#define MPI_SUCCESS
Successful return code.
#define MPI_SIGNED_CHAR
#define MPI_LOCK_SHARED
#define MPI_UINT64_T
#define MPI_MODE_NOPUT
#define MPI_ERRORS_ARE_FATAL
#define MPI_ERRORS_RETURN
#define MPI_STATUS_SIZE
Size of a status handle for the Fortran interface.
#define MPI_ERR_INFO
#define MPI_MAX_LIBRARY_VERSION_STRING
#define MPI_SHORT_INT
#define MPI_DISTRIBUTE_DFLT_DARG
#define MPI_ERR_TRUNCATE
#define MPI_ERR_COMM
#define MPI_COMM_NULL
Invalide request handle.
#define MPI_REAL2
#define MPI_REAL
#define MPI_BOTTOM
Indicates address zero for the buffer argument.
#define MPI_ERR_NO_SUCH_FILE
#define MPI_WIN_FLAVOR_CREATE
#define MPI_ERR_INTERN
#define MPI_PROD
#define MPI_AINT
#define MPI_MAX_INFO_VAL
#define MPI_INT8_T
#define MPI_DATATYPE_NULL
#define MPI_UNIVERSE_SIZE
#define MPI_WCHAR
#define MPI_ERR_IN_STATUS
#define MPI_ERR_RMA_ATTACH
Memory cannot be attached.
#define MPI_ERR_REQUEST
#define MPI_ERR_TAG
#define MPI_ERR_INFO_KEY
#define MPI_COMM_WORLD
Default communicator that includes all processes.
#define MPI_CHARACTER
#define MPI_INTEGER8
#define MPI_CXX_FLOAT_COMPLEX
#define MPI_UB
#define MPI_MAX_PROCESSOR_NAME
#define MPI_REAL4
#define MPI_ERR_RMA_RANGE
Target memory is not part of the window, or not attached.
#define MPI_DOUBLE_COMPLEX
#define MPI_PACKED
#define MPI_UNSIGNED_LONG_LONG
#define MPI_TAG_UB
#define MPI_ERR_SIZE
Invalid size argument.
#define MPI_GRAPH
graph topology
#define MPI_ERR_ASSERT
Invalid assert argument.
#define MPI_ERR_UNKNOWN
#define MPI_INT
#define MPI_FLOAT
@ MPI_COMBINER_DUP
type is duplicated from another type
@ MPI_COMBINER_INDEXED
indexed type
@ MPI_COMBINER_STRUCT
structured type
@ MPI_COMBINER_RESIZED
type is resized from another type
@ MPI_COMBINER_HINDEXED_BLOCK
@ MPI_COMBINER_INDEXED_BLOCK
@ MPI_COMBINER_HVECTOR
vector with stride in bytes
@ MPI_COMBINER_SUBARRAY
@ MPI_COMBINER_NAMED
basic type built-in MPI
@ MPI_COMBINER_HINDEXED
indexed type, offset in bytes
@ MPI_COMBINER_CONTIGUOUS
contiguous array
@ MPI_COMBINER_VECTOR
vector with stride
#define MPI_MAX_NAME_STRING
#define MPI_DOUBLE_INT
#define MPI_WTIME_IS_GLOBAL
#define MPI_BAND
#define MPI_WIN_SEPARATE
#define MPI_REQUEST_NULL
The special value MPI_REQUEST_NULL is used to indicate an invalid request handle.
#define MPI_ERR_INFO_VALUE
#define MPI_COMPLEX8
#define MPI_ERR_KEYVAL
#define MPI_LOGICAL
#define MPI_LOCK_EXCLUSIVE
#define MPI_ERR_UNSUPPORTED_OPERATION
#define MPI_THREAD_SINGLE
#define MPI_STATUS_IGNORE
#define MPI_BYTE
#define MPI_WIN_FLAVOR_DYNAMIC
#define MPI_C_BOOL
#define MPI_COMM_SELF
Communicator that includes only the process itself.
#define MPI_ERR_BUFFER
#define MPI_C_FLOAT_COMPLEX
#define MPI_STATUSES_IGNORE
#define MPI_ROOT
Specifies the root node for an intercommunicator collective communication.
#define MPI_PROC_NULL
Specify a "dummy" source or destination for communication.
#define MPI_LONG_DOUBLE_INT
#define MPI_MAXLOC
#define MPI_NO_OP
#define MPI_IO
#define MPI_IDENT
same members and order
#define MPI_ERR_DUP_DATAREP
#define MPI_OP_NULL
#define MPI_ERR_LASTCODE
#define MPI_GROUP_EMPTY
Predefined empty group.
#define MPI_MAX_INFO_KEY
#define MPI_COUNT
#define MPI_2INT
#define MPI_OFFSET
#define MPI_ERR_AMODE
#define MPI_MESSAGE_NULL
special value for invalid message handle
#define MPI_WIN_BASE
#define MPI_ERR_WIN
Invalid win argument.
#define MPI_CXX_DOUBLE_COMPLEX
#define MPI_REAL8
#define MPI_UINT8_T
#define MPI_DISTRIBUTE_CYCLIC
#define MPI_ERR_RMA_SYNC
Invalid synchronization of RMA calls.
#define MPI_MAX
#define MPI_ERR_ARG
#define MPI_THREAD_MULTIPLE
#define MPI_ERR_UNSUPPORTED_DATAREP
#define MPI_WIN_DISP_UNIT
#define MPI_ERR_RMA_FLAVOR
Passed window has the wrong flavor for the called function.
#define MPI_CXX_LONG_DOUBLE_COMPLEX
#define MPI_INTEGER
#define MPI_MODE_NOCHECK
#define MPI_WIN_NULL
#define MPI_ANY_TAG
Wilcard value for tag.
#define MPI_UNEQUAL
members differ
#define MPI_LOR
#define MPI_ERR_BAD_FILE
#define MPI_UNSIGNED_CHAR
#define MPI_DOUBLE_PRECISION
#define MPI_INTEGER4
#define MPI_THREAD_SERIALIZED
#define MPI_MINLOC
#define MPI_CXX_BOOL
#define MPI_ERR_OTHER
#define MPI_WIN_SIZE
#define MPI_ERR_RMA_CONFLICT
Conflicting accesses to window.
#define MPI_LASTUSEDCODE
#define MPI_LXOR
#define MPI_ERR_NOT_SAME
#define MPI_WIN_CREATE_FLAVOR
#define MPI_GROUP_NULL
Invalid group handle.
#define MPI_COMPLEX4
#define MPI_MAX_OBJECT_NAME
#define MPI_COMPLEX16
#define MPI_COMPLEX
#define MPI_ERR_FILE
#define MPI_LB
#define MPI_INFO_NULL
#define MPI_UNSIGNED_LONG
#define MPI_ERR_ROOT
#define MPI_SHORT
#define MPI_ERR_TYPE
#define MPI_SUM
#define MPI_2INTEGER
#define MPI_APPNUM
#define MPI_MIN
#define MPI_UINT16_T
#define MPI_ORDER_C
array is row-major
#define MPI_INTEGER1
#define MPI_COMM_TYPE_SHARED
splitting type for communicators
#define MPI_ANY_SOURCE
Wilcard value for source.
#define MPI_LAND
#define MPI_BSEND_OVERHEAD
#define MPI_ERR_LOCKTYPE
invalid locktype argument
#define MPI_ERR_PENDING
#define MPI_REPLACE
#define MPI_DOUBLE
#define MPI_ERR_BASE
Invalid base argument.
#define MPI_C_DOUBLE_COMPLEX
#define MPI_ERRHANDLER_NULL
#define MPI_BXOR
#define MPI_WIN_UNIFIED
#define MPI_ERR_NO_MEM
#define MPI_LONG
#define MPI_ERR_TOPOLOGY
#define MPI_ERR_ACCESS
#define MPI_ERR_DIMS
#define MPI_HOST
#define MPI_INTEGER2
#define MPI_LONG_LONG_INT
#define MPI_ERR_IO
#define MPI_IN_PLACE
In-place collectives.
#define MPI_INT16_T
#define MPI_WIN_MODEL
#define MPI_WIN_FLAVOR_ALLOCATE
#define MPI_ERR_OP
#define MPI_ERR_COUNT
#define MPI_CHAR
#define MPI_UINT32_T
#define MPI_ERR_DISP
Invalid disp argument.
#define MPI_ERR_INFO_NOKEY
#define MPI_UNSIGNED
#define MPI_ERR_GROUP
#define MPI_INT32_T
#define MPI_DISTRIBUTE_NONE
#define MPI_C_LONG_DOUBLE_COMPLEX
#define MPI_UNSIGNED_SHORT
#define MPI_MODE_NOPRECEDE
#define MPI_MODE_NO_ASSERT
#define MPI_C_COMPLEX
#define MPI_COMPLEX32
#define MPI_MODE_NOSUCCEED
#define MPI_LONG_LONG
#define MPI_ERR_RMA_SHARED
Memory cannot be shared.
#define MPI_MODE_NOSTORE
#define MPI_REAL16
#define MPI_LONG_DOUBLE
#define MPI_FLOAT_INT
#define MPI_THREAD_FUNNELED
#define MPI_MAX_ERROR_STRING
#define MPI_KEYVAL_INVALID
#define MPI_DISTRIBUTE_BLOCK
#define MPI_2DOUBLE_PRECISION
#define MPI_LONG_INT
#define MPI_BOR
#define MPI_ORDER_FORTRAN
array is column-major
#define MPI_2REAL
#define MPI_INT64_T
#define MPI_ERR_READ_ONLY
#define MPI_ERR_RANK
#define MPI_INTEGER16
#define MPI_WIN_FLAVOR_SHARED
#define MPI_CART
cartesian topology
#define MPI_UNDEFINED
int MPI_Datatype
Datatype handle.
#define FALSE
Definition toolbox.h:29