3! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
4! University Research and Technology
5! Corporation. All rights reserved.
6! Copyright (c) 2004-2005 The University of Tennessee and The University
7! of Tennessee Research Foundation. All rights
9! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
10! University of Stuttgart. All rights reserved.
11! Copyright (c) 2004-2005 The Regents of the University of California.
13! Copyright (c) 2006-2007 Cisco Systems, Inc. All rights reserved.
16! Additional copyrights may follow
20!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
21! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
22!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
24! Do ***not*** copy
this file to the directory where your Fortran
25! fortran application is compiled unless it is absolutely necessary! Most
26! modern Fortran compilers now support the -I command line
flag, which
27! tells the compiler where to find .h files (specifically,
this one). For
30! shell$ mpif77 foo.f -o foo -I$OMPI_HOME/include
32! will probably
do the trick (assuming that you have set OMPI_HOME
35! That being said, OMPI
's "mpif77" wrapper compiler should
36! automatically include the -I option for you. The following command
37! should be equivalent to the command listed above:
39! shell$ mpif77 foo.f -o foo
41! You should not copy this file to your local directory because it is
42! possible that this file will be changed between versions of Open MPI.
43! Indeed, this mpif.h is incompatible with the mpif.f of other
44! implementations of MPI. Using this mpif.h with other implementations
45! of MPI, or with other versions of Open MPI will result in undefined
46! behavior (to include incorrect results, segmentation faults,
47! unexplainable "hanging" in your application, etc.). Always use the
48! -I command line option instead (or let mpif77 do it for you).
50!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
51! WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
52!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
55! Include the back-end file that has the bulk of the MPI Fortran
59 include 'mpif-common.h
'
62! These "external" statements are specific to the MPI F77 interface
63! (and are toxic to the MPI F90 interface), and are therefore in the
64! MPI F77-specific header file (i.e., this one).
66 external MPI_NULL_COPY_FN, MPI_NULL_DELETE_FN
67 external MPI_COMM_NULL_COPY_FN, MPI_COMM_NULL_DELETE_FN
68 external MPI_TYPE_NULL_COPY_FN, MPI_TYPE_NULL_DELETE_FN
69 external MPI_DUP_FN, MPI_COMM_DUP_FN, MPI_TYPE_DUP_FN
70 external MPI_WIN_NULL_COPY_FN
71 external MPI_WIN_NULL_DELETE_FN
72 external MPI_WIN_DUP_FN
73! Note that MPI_CONVERSION_FN_NULL is a "constant" (it is only ever
74! checked for comparison; it is never invoked), but it is passed as
75! a function pointer (to MPI_REGISTER_DATAREP) and therefore must be
76! the same size/type. It is therefore external'ed here, and not
77! defined with an integer value in mpif-common.h.
78 external MPI_CONVERSION_FN_NULL
81!
double precision functions
83 external MPI_WTIME, MPI_WTICK , PMPI_WTICK, PMPI_WTIME
84 double precision MPI_WTIME, MPI_WTICK , PMPI_WTICK, PMPI_WTIME
*fortran !University of Stuttgart All rights reserved Inc All rights reserved ! $COPYRIGHT$ !Additional copyrights may follow ! $HEADER$ !WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING !Do ***not ***copy this file to the directory where your Fortran !fortran application is compiled unless it is absolutely necessary !Most !modern Fortran compilers now support the I command line flag