Fortran: remove the scripts from the use-mpi-tkr implementation
This is part one of several Fortran improvements and fixes. This first part removes the now-defunct scripts that are used to generate the .f90 files in the use-mpi-tkr implementation, and just commits the output from those scripts. This makes long-term maintenance of the use-mpi-tkr implementation simpler. cmr=v1.8.2:reviewer=jsquyres:subject=Various Fortran fixes/improvements This commit was SVN r32040.
Этот коммит содержится в:
родитель
65275d6326
Коммит
555073630e
@ -1,6 +1,6 @@
|
||||
# -*- shell-script -*-
|
||||
#
|
||||
# Copyright (c) 2009-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2009-2014 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
@ -28,7 +28,6 @@ AC_DEFUN([OMPI_CONFIG_FILES],[
|
||||
ompi/mpi/fortran/use-mpi-tkr/Makefile
|
||||
ompi/mpi/fortran/use-mpi-tkr/fortran_sizes.h
|
||||
ompi/mpi/fortran/use-mpi-tkr/fortran_kinds.sh
|
||||
ompi/mpi/fortran/use-mpi-tkr/scripts/Makefile
|
||||
ompi/mpi/fortran/use-mpi-ignore-tkr/Makefile
|
||||
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-interfaces.h
|
||||
ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr-file-interfaces.h
|
||||
|
@ -10,7 +10,7 @@
|
||||
# University of Stuttgart. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
# Copyright (c) 2007 Los Alamos National Security, LLC. All rights
|
||||
# reserved.
|
||||
# $COPYRIGHT$
|
||||
@ -20,52 +20,16 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
SUBDIRS = scripts
|
||||
|
||||
# THIS MAKEFILE IS OLD AND ONLY TO SUPPORT FORTRAN COMPILERS THAT DO
|
||||
# NOT SUPPORT "IGNORE TKR" FUNCTIONALITY (cough cough gfortran cough
|
||||
# cough). All reasonable Fortran compilers support ignore TKR and
|
||||
# don't compile this directory -- instead, they compile
|
||||
# ompi/fortran/use-mpi-ignore-tkr.
|
||||
|
||||
# This tree is left over to support non-ignore-tkr compilers, but
|
||||
# hasn't been updated much. Indeed, many of the comments pre-date
|
||||
# ignore-tkr days and haven't been updated.
|
||||
# NOT SUPPORT "IGNORE TKR" FUNCTIONALITY (i.e., gfortran before v4.9).
|
||||
# All other Fortran compilers support ignore TKR and don't compile
|
||||
# this directory -- instead, they compile
|
||||
# ompi/fortran/use-mpi-ignore-tkr.
|
||||
|
||||
if OMPI_BUILD_FORTRAN_USEMPI_TKR_BINDINGS
|
||||
|
||||
########################################################################
|
||||
|
||||
# This Makefile.am is quite complex and confusing. Part of the
|
||||
# problem is that Libtool (v1.5.18) does not understand F90, so we
|
||||
# have to do a few things manually (and no shared libraries). Here's a
|
||||
# summary of what is happening:
|
||||
#
|
||||
# Depedencies / who generates whom:
|
||||
#
|
||||
# configure generates fortran_kinds.sh
|
||||
# |
|
||||
# \|/
|
||||
# fortran_kinds.sh ----> sourced by scripts/* ----> generates mpi_*.f90
|
||||
# | |
|
||||
# \|/ |
|
||||
# generates mpi-f90-interfaces.h |
|
||||
# / |
|
||||
# \/ |
|
||||
# mpi-f90-interfaces.h |
|
||||
# | |
|
||||
# \|/ \|/
|
||||
# used by mpi.F90 used by mpi_*.f90
|
||||
# / | |
|
||||
# / \|/ \|/
|
||||
# / generates mpi.o generates mpi_*.o
|
||||
# \/ \ /
|
||||
# generates mpi module \/ \/
|
||||
# (filename unknown) generates libmpi_f90.a
|
||||
#
|
||||
# Once you understand this diagram, this Makefile is much more clear.
|
||||
#
|
||||
|
||||
AM_FCFLAGS = -I$(top_builddir)/ompi/include -I$(top_srcdir)/ompi/include \
|
||||
$(OMPI_FC_MODULE_FLAG). -I$(srcdir) \
|
||||
-I$(top_builddir)/ompi/mpi/fortran/use-mpi-tkr $(FCFLAGS_f90)
|
||||
@ -80,40 +44,6 @@ if OMPI_BUILD_FORTRAN_USEMPI_TKR_BINDINGS
|
||||
|
||||
lib_LTLIBRARIES += libmpi_usempi.la
|
||||
|
||||
# Ensure that the F90 interfaces are re-generated based on the values
|
||||
# that come in from configure
|
||||
|
||||
mpi-f90-interfaces.h: fortran_kinds.sh
|
||||
|
||||
CLEANFILES += mpi-f90-interfaces.h
|
||||
|
||||
# Run scripts to generate the f90 source files. We only need to
|
||||
# generate the .f90 files once, so the "test" checks to see if the
|
||||
# file exists before running the script. However, the
|
||||
# mpi-f90-interfaces.h file may need to be generated multiple times
|
||||
# (even if it already exists), such as if someone re-runs configure
|
||||
# and changes the value fortran_kinds.sh (which is taken care of by
|
||||
# the mpi-f90-interfaces.h dependency on fortran_kinds.sh, above).
|
||||
|
||||
mpi-f90-interfaces.h: $(srcdir)/scripts/mpi-f90-interfaces.h.sh
|
||||
@ p="`pwd`"; \
|
||||
echo $(srcdir)/scripts/mpi-f90-interfaces.h.sh $$p \> $@; \
|
||||
$(srcdir)/scripts/mpi-f90-interfaces.h.sh $$p > $@
|
||||
|
||||
# Unbelievably, some versions of sh (cough cough Solaris 9 cough
|
||||
# cough) actually seem to internally perform a "cd" into a
|
||||
# subdirectory when you run "./foo/bar", such that if you try to
|
||||
# source a script in the top-level directory in the bar script (e.g.,
|
||||
# ". some_script" in the bar script), it will try to run it in the
|
||||
# "foo" subdirectory, rather than the top-level directory! #$@#$%#$%
|
||||
# So we have to pass in the pwd to the scripts so that they know where
|
||||
# some_script is.
|
||||
|
||||
$(nodist_libmpi_usempi_la_SOURCES): fortran_kinds.sh
|
||||
@ p="`pwd`"; \
|
||||
echo $(srcdir)/scripts/$@.sh $$p \> $@; \
|
||||
$(srcdir)/scripts/$@.sh $$p > $@ ;
|
||||
|
||||
# Automake doesn't know how to do F90 dependency analysis, so manually
|
||||
# list this here (i.e., "mpi-f90-interfaces.h" is included in
|
||||
# mpi.F90).
|
||||
@ -125,31 +55,26 @@ $(nodist_libmpi_usempi_la_SOURCES): fortran_kinds.sh
|
||||
mpi.o: mpi.F90 mpi-f90-interfaces.h
|
||||
$(FCCOMPILE) -c -I. -o $@ $(FCFLAGS_f90) $<
|
||||
|
||||
BUILT_SOURCES = mpi-f90-interfaces.h
|
||||
endif
|
||||
|
||||
# mpi.F90 is the only f90 source file directly in libmpif90 that gets
|
||||
# distributed.
|
||||
|
||||
libmpi_usempi_la_SOURCES = mpi.F90
|
||||
libmpi_usempi_la_LIBADD = \
|
||||
$(top_builddir)/ompi/mpi/fortran/mpif-h/libmpi_mpifh.la
|
||||
|
||||
# These files are all generated by scripts in the scripts/ directory.
|
||||
|
||||
# Per MPI-3 p610:34-41, if we're building a TKR mpi module, we should
|
||||
# not build any interfaces for MPI subroutines that take a choice
|
||||
# buffer dummy argument.
|
||||
# buffer dummy argument. We therefore really only need to build a
|
||||
# handful of subroutines.
|
||||
|
||||
nodist_libmpi_usempi_la_SOURCES = \
|
||||
mpi_sizeof.f90 \
|
||||
libmpi_usempi_la_SOURCES = \
|
||||
mpi.F90 \
|
||||
mpi-f90-interfaces.h \
|
||||
mpi_comm_spawn_multiple_f90.f90 \
|
||||
mpi_sizeof.f90 \
|
||||
mpi_testall_f90.f90 \
|
||||
mpi_testsome_f90.f90 \
|
||||
mpi_waitall_f90.f90 \
|
||||
mpi_waitsome_f90.f90 \
|
||||
mpi_wtick_f90.f90 \
|
||||
mpi_wtime_f90.f90
|
||||
libmpi_usempi_la_LIBADD = \
|
||||
$(top_builddir)/ompi/mpi/fortran/mpif-h/libmpi_mpifh.la
|
||||
|
||||
# Set the library version
|
||||
libmpi_usempi_la_LDFLAGS = \
|
||||
|
3462
ompi/mpi/fortran/use-mpi-tkr/mpi-f90-interfaces.h
Обычный файл
3462
ompi/mpi/fortran/use-mpi-tkr/mpi-f90-interfaces.h
Обычный файл
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
60
ompi/mpi/fortran/use-mpi-tkr/mpi_comm_spawn_multiple_f90.f90
Обычный файл
60
ompi/mpi/fortran/use-mpi-tkr/mpi_comm_spawn_multiple_f90.f90
Обычный файл
@ -0,0 +1,60 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_Comm_spawn_multipleA(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, &
|
||||
root, comm, intercomm, array_of_errcodes, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
character(len=*), dimension(*), intent(in) :: array_of_commands
|
||||
character(len=*), dimension(count,*), intent(in) :: array_of_argv
|
||||
integer, dimension(*), intent(in) :: array_of_maxprocs
|
||||
integer, dimension(*), intent(in) :: array_of_info
|
||||
integer, intent(in) :: root
|
||||
integer, intent(in) :: comm
|
||||
integer, intent(out) :: intercomm
|
||||
integer, dimension(*), intent(out) :: array_of_errcodes
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, root, comm, intercomm, &
|
||||
array_of_errcodes, ierror)
|
||||
end subroutine MPI_Comm_spawn_multipleA
|
||||
|
||||
subroutine MPI_Comm_spawn_multipleN(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, &
|
||||
root, comm, intercomm, array_of_errcodes, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
character(len=*), dimension(*), intent(in) :: array_of_commands
|
||||
double precision, intent(in) :: array_of_argv
|
||||
integer, dimension(*), intent(in) :: array_of_maxprocs
|
||||
integer, dimension(*), intent(in) :: array_of_info
|
||||
integer, intent(in) :: root
|
||||
integer, intent(in) :: comm
|
||||
integer, intent(out) :: intercomm
|
||||
integer, dimension(*), intent(out) :: array_of_errcodes
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Comm_spawn_multiple(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, root, comm, intercomm, &
|
||||
array_of_errcodes, ierror)
|
||||
end subroutine MPI_Comm_spawn_multipleN
|
||||
|
990
ompi/mpi/fortran/use-mpi-tkr/mpi_sizeof.f90
Обычный файл
990
ompi/mpi/fortran/use-mpi-tkr/mpi_sizeof.f90
Обычный файл
@ -0,0 +1,990 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_Sizeof0DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DCH
|
||||
|
||||
subroutine MPI_Sizeof0DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DL
|
||||
|
||||
subroutine MPI_Sizeof0DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DI1
|
||||
|
||||
subroutine MPI_Sizeof0DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DI2
|
||||
|
||||
subroutine MPI_Sizeof0DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DI4
|
||||
|
||||
subroutine MPI_Sizeof0DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DI8
|
||||
|
||||
subroutine MPI_Sizeof0DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DR4
|
||||
|
||||
subroutine MPI_Sizeof0DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DR8
|
||||
|
||||
subroutine MPI_Sizeof0DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DR16
|
||||
|
||||
subroutine MPI_Sizeof0DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DC8
|
||||
|
||||
subroutine MPI_Sizeof0DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DC16
|
||||
|
||||
subroutine MPI_Sizeof0DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof0DC32
|
||||
|
||||
subroutine MPI_Sizeof1DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DCH
|
||||
|
||||
subroutine MPI_Sizeof1DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DL
|
||||
|
||||
subroutine MPI_Sizeof1DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DI1
|
||||
|
||||
subroutine MPI_Sizeof1DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DI2
|
||||
|
||||
subroutine MPI_Sizeof1DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DI4
|
||||
|
||||
subroutine MPI_Sizeof1DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DI8
|
||||
|
||||
subroutine MPI_Sizeof1DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DR4
|
||||
|
||||
subroutine MPI_Sizeof1DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DR8
|
||||
|
||||
subroutine MPI_Sizeof1DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DR16
|
||||
|
||||
subroutine MPI_Sizeof1DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DC8
|
||||
|
||||
subroutine MPI_Sizeof1DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DC16
|
||||
|
||||
subroutine MPI_Sizeof1DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof1DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof2DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DCH
|
||||
|
||||
subroutine MPI_Sizeof2DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DL
|
||||
|
||||
subroutine MPI_Sizeof2DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DI1
|
||||
|
||||
subroutine MPI_Sizeof2DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DI2
|
||||
|
||||
subroutine MPI_Sizeof2DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DI4
|
||||
|
||||
subroutine MPI_Sizeof2DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DI8
|
||||
|
||||
subroutine MPI_Sizeof2DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DR4
|
||||
|
||||
subroutine MPI_Sizeof2DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DR8
|
||||
|
||||
subroutine MPI_Sizeof2DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DR16
|
||||
|
||||
subroutine MPI_Sizeof2DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DC8
|
||||
|
||||
subroutine MPI_Sizeof2DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DC16
|
||||
|
||||
subroutine MPI_Sizeof2DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof2DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof3DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DCH
|
||||
|
||||
subroutine MPI_Sizeof3DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DL
|
||||
|
||||
subroutine MPI_Sizeof3DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DI1
|
||||
|
||||
subroutine MPI_Sizeof3DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DI2
|
||||
|
||||
subroutine MPI_Sizeof3DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DI4
|
||||
|
||||
subroutine MPI_Sizeof3DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DI8
|
||||
|
||||
subroutine MPI_Sizeof3DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DR4
|
||||
|
||||
subroutine MPI_Sizeof3DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DR8
|
||||
|
||||
subroutine MPI_Sizeof3DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DR16
|
||||
|
||||
subroutine MPI_Sizeof3DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DC8
|
||||
|
||||
subroutine MPI_Sizeof3DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DC16
|
||||
|
||||
subroutine MPI_Sizeof3DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof3DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof4DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DCH
|
||||
|
||||
subroutine MPI_Sizeof4DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DL
|
||||
|
||||
subroutine MPI_Sizeof4DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DI1
|
||||
|
||||
subroutine MPI_Sizeof4DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DI2
|
||||
|
||||
subroutine MPI_Sizeof4DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DI4
|
||||
|
||||
subroutine MPI_Sizeof4DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DI8
|
||||
|
||||
subroutine MPI_Sizeof4DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DR4
|
||||
|
||||
subroutine MPI_Sizeof4DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DR8
|
||||
|
||||
subroutine MPI_Sizeof4DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DR16
|
||||
|
||||
subroutine MPI_Sizeof4DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DC8
|
||||
|
||||
subroutine MPI_Sizeof4DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DC16
|
||||
|
||||
subroutine MPI_Sizeof4DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof4DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof5DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DCH
|
||||
|
||||
subroutine MPI_Sizeof5DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DL
|
||||
|
||||
subroutine MPI_Sizeof5DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DI1
|
||||
|
||||
subroutine MPI_Sizeof5DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DI2
|
||||
|
||||
subroutine MPI_Sizeof5DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DI4
|
||||
|
||||
subroutine MPI_Sizeof5DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DI8
|
||||
|
||||
subroutine MPI_Sizeof5DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DR4
|
||||
|
||||
subroutine MPI_Sizeof5DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DR8
|
||||
|
||||
subroutine MPI_Sizeof5DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DR16
|
||||
|
||||
subroutine MPI_Sizeof5DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DC8
|
||||
|
||||
subroutine MPI_Sizeof5DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DC16
|
||||
|
||||
subroutine MPI_Sizeof5DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof5DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof6DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DCH
|
||||
|
||||
subroutine MPI_Sizeof6DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DL
|
||||
|
||||
subroutine MPI_Sizeof6DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DI1
|
||||
|
||||
subroutine MPI_Sizeof6DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DI2
|
||||
|
||||
subroutine MPI_Sizeof6DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DI4
|
||||
|
||||
subroutine MPI_Sizeof6DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DI8
|
||||
|
||||
subroutine MPI_Sizeof6DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DR4
|
||||
|
||||
subroutine MPI_Sizeof6DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DR8
|
||||
|
||||
subroutine MPI_Sizeof6DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DR16
|
||||
|
||||
subroutine MPI_Sizeof6DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DC8
|
||||
|
||||
subroutine MPI_Sizeof6DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DC16
|
||||
|
||||
subroutine MPI_Sizeof6DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof6DC32
|
||||
|
||||
|
||||
subroutine MPI_Sizeof7DCH(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
character, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_CHARACTER
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DCH
|
||||
|
||||
subroutine MPI_Sizeof7DL(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
logical, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_LOGICAL
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DL
|
||||
|
||||
subroutine MPI_Sizeof7DI1(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*1, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT1
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DI1
|
||||
|
||||
subroutine MPI_Sizeof7DI2(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*2, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT2
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DI2
|
||||
|
||||
subroutine MPI_Sizeof7DI4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*4, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DI4
|
||||
|
||||
subroutine MPI_Sizeof7DI8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
integer*8, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_INT8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DI8
|
||||
|
||||
subroutine MPI_Sizeof7DR4(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*4, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL4
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DR4
|
||||
|
||||
subroutine MPI_Sizeof7DR8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*8, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DR8
|
||||
|
||||
subroutine MPI_Sizeof7DR16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
real*16, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_REAL16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DR16
|
||||
|
||||
subroutine MPI_Sizeof7DC8(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*8, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX8
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DC8
|
||||
|
||||
subroutine MPI_Sizeof7DC16(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*16, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX16
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DC16
|
||||
|
||||
subroutine MPI_Sizeof7DC32(x, size, ierror)
|
||||
implicit none
|
||||
include 'fortran_sizes.h'
|
||||
complex*32, dimension(1,1,1,1,1,1,*), intent(in) :: x
|
||||
integer, intent(out) :: size
|
||||
integer, intent(out) :: ierror
|
||||
size = OMPI_SIZEOF_F90_COMPLEX32
|
||||
ierror = 0
|
||||
end subroutine MPI_Sizeof7DC32
|
||||
|
||||
|
||||
|
||||
|
||||
|
43
ompi/mpi/fortran/use-mpi-tkr/mpi_testall_f90.f90
Обычный файл
43
ompi/mpi/fortran/use-mpi-tkr/mpi_testall_f90.f90
Обычный файл
@ -0,0 +1,43 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_TestallS(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
logical, intent(out) :: flag
|
||||
integer, dimension(MPI_STATUS_SIZE, count), intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testall(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
end subroutine MPI_TestallS
|
||||
|
||||
|
||||
subroutine MPI_TestallI(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
logical, intent(out) :: flag
|
||||
double precision, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testall(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
end subroutine MPI_TestallI
|
||||
|
47
ompi/mpi/fortran/use-mpi-tkr/mpi_testsome_f90.f90
Обычный файл
47
ompi/mpi/fortran/use-mpi-tkr/mpi_testsome_f90.f90
Обычный файл
@ -0,0 +1,47 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_TestsomeS(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
integer, dimension(MPI_STATUS_SIZE, incount), intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_TestsomeS
|
||||
|
||||
|
||||
subroutine MPI_TestsomeI(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
double precision, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_TestsomeI
|
||||
|
39
ompi/mpi/fortran/use-mpi-tkr/mpi_waitall_f90.f90
Обычный файл
39
ompi/mpi/fortran/use-mpi-tkr/mpi_waitall_f90.f90
Обычный файл
@ -0,0 +1,39 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_WaitallS(count, array_of_requests, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
integer, dimension(MPI_STATUS_SIZE, count), intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
call MPI_Waitall(count, array_of_requests, array_of_statuses, ierror)
|
||||
end subroutine MPI_WaitallS
|
||||
|
||||
|
||||
subroutine MPI_WaitallI(count, array_of_requests, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
double precision, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
call MPI_Waitall(count, array_of_requests, array_of_statuses, ierror)
|
||||
end subroutine MPI_WaitallI
|
||||
|
47
ompi/mpi/fortran/use-mpi-tkr/mpi_waitsome_f90.f90
Обычный файл
47
ompi/mpi/fortran/use-mpi-tkr/mpi_waitsome_f90.f90
Обычный файл
@ -0,0 +1,47 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
subroutine MPI_WaitsomeS(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
integer, dimension(MPI_STATUS_SIZE, incount), intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_WaitsomeS
|
||||
|
||||
|
||||
subroutine MPI_WaitsomeI(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
double precision, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_WaitsomeI
|
||||
|
27
ompi/mpi/fortran/use-mpi-tkr/mpi_wtick_f90.f90
Обычный файл
27
ompi/mpi/fortran/use-mpi-tkr/mpi_wtick_f90.f90
Обычный файл
@ -0,0 +1,27 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
function MPI_Wtick()
|
||||
implicit none
|
||||
double precision :: MPI_Wtick, foo
|
||||
call MPI_Wtick_f90(foo)
|
||||
MPI_Wtick = foo
|
||||
end function MPI_Wtick
|
||||
|
27
ompi/mpi/fortran/use-mpi-tkr/mpi_wtime_f90.f90
Обычный файл
27
ompi/mpi/fortran/use-mpi-tkr/mpi_wtime_f90.f90
Обычный файл
@ -0,0 +1,27 @@
|
||||
! -*- fortran -*-
|
||||
!
|
||||
! Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
! University Research and Technology
|
||||
! Corporation. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
! of Tennessee Research Foundation. All rights
|
||||
! reserved.
|
||||
! Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
! University of Stuttgart. All rights reserved.
|
||||
! Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
! All rights reserved.
|
||||
! Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
|
||||
! $COPYRIGHT$
|
||||
!
|
||||
! Additional copyrights may follow
|
||||
!
|
||||
! $HEADER$
|
||||
!
|
||||
|
||||
function MPI_Wtime()
|
||||
implicit none
|
||||
double precision :: MPI_Wtime, foo
|
||||
call MPI_Wtime_f90(foo)
|
||||
MPI_Wtime = foo
|
||||
end function MPI_Wtime
|
||||
|
@ -1,39 +0,0 @@
|
||||
# -*- makefile -*-
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
# of Tennessee Research Foundation. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
# University of Stuttgart. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2013 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
fortran_scripts = \
|
||||
mpi-f90-interfaces.h.sh \
|
||||
mpi_comm_spawn_multiple_f90.f90.sh \
|
||||
mpi_sizeof.f90.sh \
|
||||
mpi_testall_f90.f90.sh \
|
||||
mpi_testsome_f90.f90.sh \
|
||||
mpi_unpack_external_f90.f90.sh \
|
||||
mpi_unpack_f90.f90.sh \
|
||||
mpi_waitall_f90.f90.sh \
|
||||
mpi_waitsome_f90.f90.sh \
|
||||
mpi_wtick_f90.f90.sh \
|
||||
mpi_wtime_f90.f90.sh
|
||||
|
||||
EXTRA_DIST = $(fortran_scripts)
|
||||
|
||||
if OMPI_BUILD_FORTRAN_USEMPI_TKR_BINDINGS
|
||||
noinst_SCRIPTS = $(fortran_scripts)
|
||||
endif
|
||||
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
@ -1,70 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
#
|
||||
# This file generates a Fortran code to bridge between an explicit F90
|
||||
# generic interface and the F77 implementation.
|
||||
#
|
||||
# This file is automatically generated by either of the scripts
|
||||
# ../xml/create_mpi_f90_medium.f90.sh or
|
||||
# ../xml/create_mpi_f90_large.f90.sh
|
||||
#
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
output() {
|
||||
procedure=$1
|
||||
proc="$1$2"
|
||||
argv_type=$3
|
||||
|
||||
cat <<EOF
|
||||
subroutine ${proc}(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, &
|
||||
root, comm, intercomm, array_of_errcodes, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
character(len=*), dimension(*), intent(in) :: array_of_commands
|
||||
$argv_type, intent(in) :: array_of_argv
|
||||
integer, dimension(*), intent(in) :: array_of_maxprocs
|
||||
integer, dimension(*), intent(in) :: array_of_info
|
||||
integer, intent(in) :: root
|
||||
integer, intent(in) :: comm
|
||||
integer, intent(out) :: intercomm
|
||||
integer, dimension(*), intent(out) :: array_of_errcodes
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call ${procedure}(count, array_of_commands, array_of_argv, &
|
||||
array_of_maxprocs, array_of_info, root, comm, intercomm, &
|
||||
array_of_errcodes, ierror)
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
# A = real argv, N = ARGV_NULL
|
||||
|
||||
output MPI_Comm_spawn_multiple A "character(len=*), dimension(count,*)"
|
||||
output MPI_Comm_spawn_multiple N "double precision"
|
@ -1,179 +0,0 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The University of Tennessee and The University
|
||||
# of Tennessee Research Foundation. All rights
|
||||
# reserved.
|
||||
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
||||
# University of Stuttgart. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
procedure='MPI_Sizeof'
|
||||
|
||||
rank=0
|
||||
|
||||
proc="${procedure}${rank}DCH"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " character, intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_CHARACTER"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
|
||||
proc="${procedure}${rank}DL"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " logical, intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_LOGICAL"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
|
||||
for kind in $ikinds
|
||||
do
|
||||
proc="${procedure}${rank}DI${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " integer*${kind}, intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_INT${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
|
||||
for kind in $rkinds
|
||||
do
|
||||
proc="${procedure}${rank}DR${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " real*${kind}, intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_REAL${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
|
||||
for kind in $ckinds
|
||||
do
|
||||
proc="${procedure}${rank}DC${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " complex*${kind}, intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_COMPLEX${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
|
||||
|
||||
for rank in $ranks
|
||||
do
|
||||
case "$rank" in 1) dim='*' ; esac
|
||||
case "$rank" in 2) dim='1,*' ; esac
|
||||
case "$rank" in 3) dim='1,1,*' ; esac
|
||||
case "$rank" in 4) dim='1,1,1,*' ; esac
|
||||
case "$rank" in 5) dim='1,1,1,1,*' ; esac
|
||||
case "$rank" in 6) dim='1,1,1,1,1,*' ; esac
|
||||
case "$rank" in 7) dim='1,1,1,1,1,1,*' ; esac
|
||||
|
||||
proc="${procedure}${rank}DCH"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " character, dimension(${dim}), intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_CHARACTER"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
|
||||
proc="${procedure}${rank}DL"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " logical, dimension(${dim}), intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_LOGICAL"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
|
||||
for kind in $ikinds
|
||||
do
|
||||
proc="${procedure}${rank}DI${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " integer*${kind}, dimension(${dim}), intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_INT${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
|
||||
for kind in $rkinds
|
||||
do
|
||||
proc="${procedure}${rank}DR${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " real*${kind}, dimension(${dim}), intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_REAL${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
|
||||
for kind in $ckinds
|
||||
do
|
||||
proc="${procedure}${rank}DC${kind}"
|
||||
echo "subroutine ${proc}(x, size, ierror)"
|
||||
echo " implicit none"
|
||||
echo " include 'fortran_sizes.h'"
|
||||
echo " complex*${kind}, dimension(${dim}), intent(in) :: x"
|
||||
echo " integer, intent(out) :: size"
|
||||
echo " integer, intent(out) :: ierror"
|
||||
echo " size = OMPI_SIZEOF_F90_COMPLEX${kind}"
|
||||
echo " ierror = 0"
|
||||
echo "end subroutine ${proc}"
|
||||
echo
|
||||
done
|
||||
echo
|
||||
done
|
||||
echo
|
||||
echo
|
||||
echo
|
@ -1,56 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
output() {
|
||||
suffix=$1
|
||||
status_type=$2
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine MPI_Testall${suffix}(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
logical, intent(out) :: flag
|
||||
$status_type, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testall(count, array_of_requests, flag, array_of_statuses, ierror)
|
||||
end subroutine MPI_Testall${suffix}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
# S = array of statuses, I = STATUSES_IGNORE
|
||||
|
||||
output S "integer, dimension(MPI_STATUS_SIZE, count)"
|
||||
output I "double precision"
|
@ -1,58 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
output() {
|
||||
suffix=$1
|
||||
status_type=$2
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine MPI_Testsome${suffix}(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
$status_type, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Testsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_Testsome${suffix}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
# S = array of statuses, I = STATUSES_IGNORE
|
||||
|
||||
output S "integer, dimension(MPI_STATUS_SIZE, incount)"
|
||||
output I "double precision"
|
@ -1,92 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
#
|
||||
# This file generates a Fortran code to bridge between an explicit F90
|
||||
# generic interface and the F77 implementation.
|
||||
#
|
||||
# This file is automatically generated by either of the scripts
|
||||
# ../xml/create_mpi_f90_medium.f90.sh or
|
||||
# ../xml/create_mpi_f90_large.f90.sh
|
||||
#
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in medium/large modules. So if
|
||||
# we're not at least medium, bail now.
|
||||
|
||||
check_size large
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
allranks="0 $ranks"
|
||||
|
||||
|
||||
output() {
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(datarep, inbuf, insize, position, outbuf, &
|
||||
outcount, datatype, ierror)
|
||||
include "mpif-config.h"
|
||||
character(len=*), intent(in) :: datarep
|
||||
${type}, intent(in) :: inbuf
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(in) :: insize
|
||||
integer(kind=MPI_ADDRESS_KIND), intent(inout) :: position
|
||||
${type} :: outbuf
|
||||
integer, intent(in) :: outcount
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: ierror
|
||||
call ${procedure}(datarep, inbuf, insize, position, outbuf, &
|
||||
outcount, datatype, ierror)
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output MPI_Unpack_external ${rank} CH "character${dim}"
|
||||
output MPI_Unpack_external ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output MPI_Unpack_external ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output MPI_Unpack_external ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output MPI_Unpack_external ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
@ -1,92 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
#
|
||||
# This file generates a Fortran code to bridge between an explicit F90
|
||||
# generic interface and the F77 implementation.
|
||||
#
|
||||
# This file is automatically generated by either of the scripts
|
||||
# ../xml/create_mpi_f90_medium.f90.sh or
|
||||
# ../xml/create_mpi_f90_large.f90.sh
|
||||
#
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in medium/large modules. So if
|
||||
# we're not at least medium, bail now.
|
||||
|
||||
check_size large
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
allranks="0 $ranks"
|
||||
|
||||
|
||||
output() {
|
||||
procedure=$1
|
||||
rank=$2
|
||||
type=$4
|
||||
proc="$1$2D$3"
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine ${proc}(inbuf, insize, position, outbuf, outcount, &
|
||||
datatype, comm, ierror)
|
||||
include "mpif-config.h"
|
||||
${type}, intent(in) :: inbuf
|
||||
integer, intent(in) :: insize
|
||||
integer, intent(inout) :: position
|
||||
${type} :: outbuf
|
||||
integer, intent(in) :: outcount
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(in) :: comm
|
||||
integer, intent(out) :: ierror
|
||||
call ${procedure}(inbuf, insize, position, outbuf, outcount, &
|
||||
datatype, comm, ierror)
|
||||
end subroutine ${proc}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
for rank in $allranks
|
||||
do
|
||||
case "$rank" in 0) dim='' ; esac
|
||||
case "$rank" in 1) dim=', dimension(*)' ; esac
|
||||
case "$rank" in 2) dim=', dimension(1,*)' ; esac
|
||||
case "$rank" in 3) dim=', dimension(1,1,*)' ; esac
|
||||
case "$rank" in 4) dim=', dimension(1,1,1,*)' ; esac
|
||||
case "$rank" in 5) dim=', dimension(1,1,1,1,*)' ; esac
|
||||
case "$rank" in 6) dim=', dimension(1,1,1,1,1,*)' ; esac
|
||||
case "$rank" in 7) dim=', dimension(1,1,1,1,1,1,*)' ; esac
|
||||
|
||||
output MPI_Unpack ${rank} CH "character${dim}"
|
||||
output MPI_Unpack ${rank} L "logical${dim}"
|
||||
for kind in $ikinds
|
||||
do
|
||||
output MPI_Unpack ${rank} I${kind} "integer*${kind}${dim}"
|
||||
done
|
||||
for kind in $rkinds
|
||||
do
|
||||
output MPI_Unpack ${rank} R${kind} "real*${kind}${dim}"
|
||||
done
|
||||
for kind in $ckinds
|
||||
do
|
||||
output MPI_Unpack ${rank} C${kind} "complex*${kind}${dim}"
|
||||
done
|
||||
done
|
@ -1,54 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
output() {
|
||||
suffix=$1
|
||||
status_type=$2
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine MPI_Waitall${suffix}(count, array_of_requests, array_of_statuses, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: count
|
||||
integer, dimension(count), intent(inout) :: array_of_requests
|
||||
$status_type, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
call MPI_Waitall(count, array_of_requests, array_of_statuses, ierror)
|
||||
end subroutine MPI_Waitall${suffix}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
# S = array of statuses, I = STATUSES_IGNORE
|
||||
|
||||
output S "integer, dimension(MPI_STATUS_SIZE, count)"
|
||||
output I "double precision"
|
@ -1,58 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
output() {
|
||||
suffix=$1
|
||||
status_type=$2
|
||||
|
||||
cat <<EOF
|
||||
|
||||
subroutine MPI_Waitsome${suffix}(incount, array_of_requests, outcount, array_of_indices, array_of_statuses&
|
||||
, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: incount
|
||||
integer, dimension(incount), intent(inout) :: array_of_requests
|
||||
integer, intent(out) :: outcount
|
||||
integer, dimension(*), intent(out) :: array_of_indices
|
||||
$status_type, intent(out) :: array_of_statuses
|
||||
integer, intent(out) :: ierror
|
||||
|
||||
call MPI_Waitsome(incount, array_of_requests, outcount, array_of_indices, array_of_statuses, ierror)
|
||||
end subroutine MPI_Waitsome${suffix}
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
# S = array of statuses, I = STATUSES_IGNORE
|
||||
|
||||
output S "integer, dimension(MPI_STATUS_SIZE, incount)"
|
||||
output I "double precision"
|
@ -1,42 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
cat <<EOF
|
||||
|
||||
function MPI_Wtick()
|
||||
implicit none
|
||||
double precision :: MPI_Wtick, foo
|
||||
call MPI_Wtick_f90(foo)
|
||||
MPI_Wtick = foo
|
||||
end function MPI_Wtick
|
||||
|
||||
EOF
|
@ -1,42 +0,0 @@
|
||||
#! /bin/sh
|
||||
|
||||
#
|
||||
# Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
|
||||
# University Research and Technology
|
||||
# Corporation. All rights reserved.
|
||||
# Copyright (c) 2004-2005 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
# Copyright (c) 2006-2012 Cisco Systems, Inc. All rights reserved.
|
||||
# $COPYRIGHT$
|
||||
#
|
||||
# Additional copyrights may follow
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# This flie was not generated by XML scripts; it was written by hand.
|
||||
# It may be generated someday, but at this point, it was simpler to
|
||||
# just write it by hand.
|
||||
|
||||
. "$1/fortran_kinds.sh"
|
||||
|
||||
# This entire file is only generated in small or larger modules. So
|
||||
# if we're not at least small, bail now.
|
||||
|
||||
check_size small
|
||||
if test "$output" = "0"; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Ok, we should continue.
|
||||
|
||||
cat <<EOF
|
||||
|
||||
function MPI_Wtime()
|
||||
implicit none
|
||||
double precision :: MPI_Wtime, foo
|
||||
call MPI_Wtime_f90(foo)
|
||||
MPI_Wtime = foo
|
||||
end function MPI_Wtime
|
||||
|
||||
EOF
|
Загрузка…
x
Ссылка в новой задаче
Block a user