add fortran interfaces to the new nb collective I/O functions
Этот коммит содержится в:
родитель
01f752a504
Коммит
19994ff60d
84
ompi/mpi/fortran/mpif-h/file_iread_all_f.c
Обычный файл
84
ompi/mpi/fortran/mpif-h/file_iread_all_f.c
Обычный файл
@ -0,0 +1,84 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2005 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) 2011-2012 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#include "ompi_config.h"
|
||||
|
||||
#include "ompi/mpi/fortran/mpif-h/bindings.h"
|
||||
#include "ompi/mpi/fortran/base/constants.h"
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
|
||||
#pragma weak PMPI_FILE_IREAD_ALL = ompi_file_iread_all_f
|
||||
#pragma weak pmpi_file_iread_all = ompi_file_iread_all_f
|
||||
#pragma weak pmpi_file_iread_all_ = ompi_file_iread_all_f
|
||||
#pragma weak pmpi_file_iread_all__ = ompi_file_iread_all_f
|
||||
|
||||
#pragma weak PMPI_File_iread_all_f = ompi_file_iread_all_f
|
||||
#pragma weak PMPI_File_iread_all_f08 = ompi_file_iread_all_f
|
||||
#elif OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (PMPI_FILE_IREAD_ALL,
|
||||
pmpi_file_iread_all,
|
||||
pmpi_file_iread_all_,
|
||||
pmpi_file_iread_all__,
|
||||
pompi_file_iread_all_f,
|
||||
(MPI_Fint *fh, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS
|
||||
#pragma weak MPI_FILE_IREAD_ALL = ompi_file_iread_all_f
|
||||
#pragma weak mpi_file_iread_all = ompi_file_iread_all_f
|
||||
#pragma weak mpi_file_iread_all_ = ompi_file_iread_all_f
|
||||
#pragma weak mpi_file_iread_all__ = ompi_file_iread_all_f
|
||||
|
||||
#pragma weak MPI_File_iread_all_f = ompi_file_iread_all_f
|
||||
#pragma weak MPI_File_iread_all_f08 = ompi_file_iread_all_f
|
||||
#endif
|
||||
|
||||
#if ! OPAL_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (MPI_FILE_IREAD_ALL,
|
||||
mpi_file_iread_all,
|
||||
mpi_file_iread_all_,
|
||||
mpi_file_iread_all__,
|
||||
ompi_file_iread_all_f,
|
||||
(MPI_Fint *fh, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
|
||||
#if OMPI_PROFILE_LAYER && ! OPAL_HAVE_WEAK_SYMBOLS
|
||||
#include "ompi/mpi/fortran/mpif-h/profile/defines.h"
|
||||
#endif
|
||||
|
||||
void ompi_file_iread_all_f(MPI_Fint *fh, char *buf, MPI_Fint *count,
|
||||
MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr)
|
||||
{
|
||||
int c_ierr;
|
||||
MPI_File c_fh = MPI_File_f2c(*fh);
|
||||
MPI_Datatype c_type = MPI_Type_f2c(*datatype);
|
||||
MPI_Request c_request;
|
||||
|
||||
c_ierr = MPI_File_iread_all(c_fh, OMPI_F2C_BOTTOM(buf),
|
||||
OMPI_FINT_2_INT(*count),
|
||||
c_type, &c_request);
|
||||
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
|
||||
|
||||
if (MPI_SUCCESS == c_ierr) {
|
||||
*request = MPI_Request_c2f(c_request);
|
||||
}
|
||||
}
|
87
ompi/mpi/fortran/mpif-h/file_iread_at_all_f.c
Обычный файл
87
ompi/mpi/fortran/mpif-h/file_iread_at_all_f.c
Обычный файл
@ -0,0 +1,87 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2005 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) 2011-2012 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#include "ompi_config.h"
|
||||
|
||||
#include "ompi/mpi/fortran/mpif-h/bindings.h"
|
||||
#include "ompi/mpi/fortran/base/constants.h"
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
|
||||
#pragma weak PMPI_FILE_IREAD_AT_ALL = ompi_file_iread_at_all_f
|
||||
#pragma weak pmpi_file_iread_at_all = ompi_file_iread_at_all_f
|
||||
#pragma weak pmpi_file_iread_at_all_ = ompi_file_iread_at_all_f
|
||||
#pragma weak pmpi_file_iread_at_all__ = ompi_file_iread_at_all_f
|
||||
|
||||
#pragma weak PMPI_File_iread_at_all_f = ompi_file_iread_at_all_f
|
||||
#pragma weak PMPI_File_iread_at_all_f08 = ompi_file_iread_at_all_f
|
||||
#elif OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (PMPI_FILE_IREAD_AT_ALL,
|
||||
pmpi_file_iread_at_all,
|
||||
pmpi_file_iread_at_all_,
|
||||
pmpi_file_iread_at_all__,
|
||||
pompi_file_iread_at_all_f,
|
||||
(MPI_Fint *fh, MPI_Offset *offset, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, offset, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS
|
||||
#pragma weak MPI_FILE_IREAD_AT_ALL = ompi_file_iread_at_all_f
|
||||
#pragma weak mpi_file_iread_at_all = ompi_file_iread_at_all_f
|
||||
#pragma weak mpi_file_iread_at_all_ = ompi_file_iread_at_all_f
|
||||
#pragma weak mpi_file_iread_at_all__ = ompi_file_iread_at_all_f
|
||||
|
||||
#pragma weak MPI_File_iread_at_all_f = ompi_file_iread_at_all_f
|
||||
#pragma weak MPI_File_iread_at_all_f08 = ompi_file_iread_at_all_f
|
||||
#endif
|
||||
|
||||
#if ! OPAL_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (MPI_FILE_IREAD_AT_ALL,
|
||||
mpi_file_iread_at_all,
|
||||
mpi_file_iread_at_all_,
|
||||
mpi_file_iread_at_all__,
|
||||
ompi_file_iread_at_all_f,
|
||||
(MPI_Fint *fh, MPI_Offset *offset, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, offset, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
|
||||
#if OMPI_PROFILE_LAYER && ! OPAL_HAVE_WEAK_SYMBOLS
|
||||
#include "ompi/mpi/fortran/mpif-h/profile/defines.h"
|
||||
#endif
|
||||
|
||||
void ompi_file_iread_at_all_f(MPI_Fint *fh, MPI_Offset *offset,
|
||||
char *buf, MPI_Fint *count,
|
||||
MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr)
|
||||
{
|
||||
int c_ierr;
|
||||
MPI_File c_fh = MPI_File_f2c(*fh);
|
||||
MPI_Datatype c_type = MPI_Type_f2c(*datatype);
|
||||
MPI_Request c_request;
|
||||
|
||||
c_ierr = MPI_File_iread_at_all(c_fh, (MPI_Offset) *offset,
|
||||
OMPI_F2C_BOTTOM(buf),
|
||||
OMPI_FINT_2_INT(*count),
|
||||
c_type,
|
||||
&c_request);
|
||||
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
|
||||
|
||||
if (MPI_SUCCESS == c_ierr) {
|
||||
*request = MPI_Request_c2f(c_request);
|
||||
}
|
||||
}
|
83
ompi/mpi/fortran/mpif-h/file_iwrite_all_f.c
Обычный файл
83
ompi/mpi/fortran/mpif-h/file_iwrite_all_f.c
Обычный файл
@ -0,0 +1,83 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2005 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) 2011-2012 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#include "ompi_config.h"
|
||||
|
||||
#include "ompi/mpi/fortran/mpif-h/bindings.h"
|
||||
#include "ompi/mpi/fortran/base/constants.h"
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
|
||||
#pragma weak PMPI_FILE_IWRITE_ALL = ompi_file_iwrite_all_f
|
||||
#pragma weak pmpi_file_iwrite_all = ompi_file_iwrite_all_f
|
||||
#pragma weak pmpi_file_iwrite_all_ = ompi_file_iwrite_all_f
|
||||
#pragma weak pmpi_file_iwrite_all__ = ompi_file_iwrite_all_f
|
||||
|
||||
#pragma weak PMPI_File_iwrite_all_f = ompi_file_iwrite_all_f
|
||||
#pragma weak PMPI_File_iwrite_all_f08 = ompi_file_iwrite_all_f
|
||||
#elif OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (PMPI_FILE_IWRITE_ALL,
|
||||
pmpi_file_iwrite_all,
|
||||
pmpi_file_iwrite_all_,
|
||||
pmpi_file_iwrite_all__,
|
||||
pompi_file_iwrite_all_f,
|
||||
(MPI_Fint *fh, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS
|
||||
#pragma weak MPI_FILE_IWRITE_ALL = ompi_file_iwrite_all_f
|
||||
#pragma weak mpi_file_iwrite_all = ompi_file_iwrite_all_f
|
||||
#pragma weak mpi_file_iwrite_all_ = ompi_file_iwrite_all_f
|
||||
#pragma weak mpi_file_iwrite_all__ = ompi_file_iwrite_all_f
|
||||
|
||||
#pragma weak MPI_File_iwrite_all_f = ompi_file_iwrite_all_f
|
||||
#pragma weak MPI_File_iwrite_all_f08 = ompi_file_iwrite_all_f
|
||||
#endif
|
||||
|
||||
#if ! OPAL_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (MPI_FILE_IWRITE_ALL,
|
||||
mpi_file_iwrite_all,
|
||||
mpi_file_iwrite_all_,
|
||||
mpi_file_iwrite_all__,
|
||||
ompi_file_iwrite_all_f,
|
||||
(MPI_Fint *fh, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
|
||||
#if OMPI_PROFILE_LAYER && ! OPAL_HAVE_WEAK_SYMBOLS
|
||||
#include "ompi/mpi/fortran/mpif-h/profile/defines.h"
|
||||
#endif
|
||||
|
||||
void ompi_file_iwrite_all_f(MPI_Fint *fh, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr)
|
||||
{
|
||||
int c_ierr;
|
||||
MPI_File c_fh = MPI_File_f2c(*fh);
|
||||
MPI_Datatype c_type = MPI_Type_f2c(*datatype);
|
||||
MPI_Request c_request;
|
||||
|
||||
c_ierr = MPI_File_iwrite_all(c_fh, OMPI_F2C_BOTTOM(buf),
|
||||
OMPI_FINT_2_INT(*count),
|
||||
c_type, &c_request);
|
||||
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
|
||||
|
||||
if (MPI_SUCCESS == c_ierr) {
|
||||
*request = MPI_Request_c2f(c_request);
|
||||
}
|
||||
}
|
86
ompi/mpi/fortran/mpif-h/file_iwrite_at_all_f.c
Обычный файл
86
ompi/mpi/fortran/mpif-h/file_iwrite_at_all_f.c
Обычный файл
@ -0,0 +1,86 @@
|
||||
/*
|
||||
* Copyright (c) 2004-2005 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) 2011-2012 Cisco Systems, Inc. All rights reserved.
|
||||
* $COPYRIGHT$
|
||||
*
|
||||
* Additional copyrights may follow
|
||||
*
|
||||
* $HEADER$
|
||||
*/
|
||||
|
||||
#include "ompi_config.h"
|
||||
|
||||
#include "ompi/mpi/fortran/mpif-h/bindings.h"
|
||||
#include "ompi/mpi/fortran/base/constants.h"
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS && OMPI_PROFILE_LAYER
|
||||
#pragma weak PMPI_FILE_IWRITE_AT_ALL = ompi_file_iwrite_at_all_f
|
||||
#pragma weak pmpi_file_iwrite_at_all = ompi_file_iwrite_at_all_f
|
||||
#pragma weak pmpi_file_iwrite_at_all_ = ompi_file_iwrite_at_all_f
|
||||
#pragma weak pmpi_file_iwrite_at_all__ = ompi_file_iwrite_at_all_f
|
||||
|
||||
#pragma weak PMPI_File_iwrite_at_all_f = ompi_file_iwrite_at_all_f
|
||||
#pragma weak PMPI_File_iwrite_at_all_f08 = ompi_file_iwrite_at_all_f
|
||||
#elif OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (PMPI_FILE_IWRITE_AT_ALL,
|
||||
pmpi_file_iwrite_at_all,
|
||||
pmpi_file_iwrite_at_all_,
|
||||
pmpi_file_iwrite_at_all__,
|
||||
pompi_file_iwrite_at_all_f,
|
||||
(MPI_Fint *fh, MPI_Offset *offset, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, offset, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
#if OPAL_HAVE_WEAK_SYMBOLS
|
||||
#pragma weak MPI_FILE_IWRITE_AT_ALL = ompi_file_iwrite_at_all_f
|
||||
#pragma weak mpi_file_iwrite_at_all = ompi_file_iwrite_at_all_f
|
||||
#pragma weak mpi_file_iwrite_at_all_ = ompi_file_iwrite_at_all_f
|
||||
#pragma weak mpi_file_iwrite_at_all__ = ompi_file_iwrite_at_all_f
|
||||
|
||||
#pragma weak MPI_File_iwrite_at_all_f = ompi_file_iwrite_at_all_f
|
||||
#pragma weak MPI_File_iwrite_at_all_f08 = ompi_file_iwrite_at_all_f
|
||||
#endif
|
||||
|
||||
#if ! OPAL_HAVE_WEAK_SYMBOLS && ! OMPI_PROFILE_LAYER
|
||||
OMPI_GENERATE_F77_BINDINGS (MPI_FILE_IWRITE_AT_ALL,
|
||||
mpi_file_iwrite_at_all,
|
||||
mpi_file_iwrite_at_all_,
|
||||
mpi_file_iwrite_at_all__,
|
||||
ompi_file_iwrite_at_all_f,
|
||||
(MPI_Fint *fh, MPI_Offset *offset, char *buf, MPI_Fint *count, MPI_Fint *datatype, MPI_Fint *request, MPI_Fint *ierr),
|
||||
(fh, offset, buf, count, datatype, request, ierr) )
|
||||
#endif
|
||||
|
||||
|
||||
#if OMPI_PROFILE_LAYER && ! OPAL_HAVE_WEAK_SYMBOLS
|
||||
#include "ompi/mpi/fortran/mpif-h/profile/defines.h"
|
||||
#endif
|
||||
|
||||
void ompi_file_iwrite_at_all_f(MPI_Fint *fh, MPI_Offset *offset, char *buf,
|
||||
MPI_Fint *count, MPI_Fint *datatype,
|
||||
MPI_Fint *request, MPI_Fint *ierr)
|
||||
{
|
||||
int c_ierr;
|
||||
MPI_File c_fh = MPI_File_f2c(*fh);
|
||||
MPI_Datatype c_type = MPI_Type_f2c(*datatype);
|
||||
MPI_Request c_request;
|
||||
|
||||
c_ierr = MPI_File_iwrite_at_all(c_fh, (MPI_Offset) *offset,
|
||||
OMPI_F2C_BOTTOM(buf),
|
||||
OMPI_FINT_2_INT(*count),
|
||||
c_type, &c_request);
|
||||
if (NULL != ierr) *ierr = OMPI_INT_2_FINT(c_ierr);
|
||||
|
||||
if (MPI_SUCCESS == c_ierr) {
|
||||
*request = MPI_Request_c2f(c_request);
|
||||
}
|
||||
}
|
@ -396,9 +396,13 @@ mpi_api_files += \
|
||||
file_get_view_f08.F90 \
|
||||
file_iread_at_f08.F90 \
|
||||
file_iread_f08.F90 \
|
||||
file_iread_at_all_f08.F90 \
|
||||
file_iread_all_f08.F90 \
|
||||
file_iread_shared_f08.F90 \
|
||||
file_iwrite_at_f08.F90 \
|
||||
file_iwrite_f08.F90 \
|
||||
file_iwrite_at_all_f08.F90 \
|
||||
file_iwrite_all_f08.F90 \
|
||||
file_iwrite_shared_f08.F90 \
|
||||
file_open_f08.F90 \
|
||||
file_preallocate_f08.F90 \
|
||||
|
25
ompi/mpi/fortran/use-mpi-f08/file_iread_all_f08.F90
Обычный файл
25
ompi/mpi/fortran/use-mpi-f08/file_iread_all_f08.F90
Обычный файл
@ -0,0 +1,25 @@
|
||||
! -*- f90 -*-
|
||||
!
|
||||
! Copyright (c) 2010-2012 Cisco Systems, Inc. All rights reserved.
|
||||
! Copyright (c) 2009-2012 Los Alamos National Security, LLC.
|
||||
! All Rights reserved.
|
||||
! $COPYRIGHT$
|
||||
|
||||
#include "ompi/mpi/fortran/configure-fortran-output.h"
|
||||
|
||||
subroutine MPI_File_iread_all_f08(fh,buf,count,datatype,request,ierror)
|
||||
use :: mpi_f08_types, only : MPI_File, MPI_Datatype, MPI_Request
|
||||
use :: mpi_f08, only : ompi_file_iread_all_f
|
||||
implicit none
|
||||
TYPE(MPI_File), INTENT(IN) :: fh
|
||||
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: buf
|
||||
INTEGER, INTENT(IN) :: count
|
||||
TYPE(MPI_Datatype), INTENT(IN) :: datatype
|
||||
TYPE(MPI_Request), INTENT(OUT) :: request
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
integer :: c_ierror
|
||||
|
||||
call ompi_file_iread_all_f(fh%MPI_VAL,buf,count,datatype%MPI_VAL,request%MPI_VAL,c_ierror)
|
||||
if (present(ierror)) ierror = c_ierror
|
||||
|
||||
end subroutine MPI_File_iread_all_f08
|
27
ompi/mpi/fortran/use-mpi-f08/file_iread_at_all_f08.F90
Обычный файл
27
ompi/mpi/fortran/use-mpi-f08/file_iread_at_all_f08.F90
Обычный файл
@ -0,0 +1,27 @@
|
||||
! -*- f90 -*-
|
||||
!
|
||||
! Copyright (c) 2010-2012 Cisco Systems, Inc. All rights reserved.
|
||||
! Copyright (c) 2009-2012 Los Alamos National Security, LLC.
|
||||
! All Rights reserved.
|
||||
! $COPYRIGHT$
|
||||
|
||||
#include "ompi/mpi/fortran/configure-fortran-output.h"
|
||||
|
||||
subroutine MPI_File_iread_at_all_f08(fh,offset,buf,count,datatype,request,ierror)
|
||||
use :: mpi_f08_types, only : MPI_File, MPI_Datatype, MPI_Request, MPI_OFFSET_KIND
|
||||
use :: mpi_f08, only : ompi_file_iread_at_all_f
|
||||
implicit none
|
||||
TYPE(MPI_File), INTENT(IN) :: fh
|
||||
INTEGER(MPI_OFFSET_KIND), INTENT(IN) :: offset
|
||||
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: buf
|
||||
INTEGER, INTENT(IN) :: count
|
||||
TYPE(MPI_Datatype), INTENT(IN) :: datatype
|
||||
TYPE(MPI_Request), INTENT(OUT) :: request
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
integer :: c_ierror
|
||||
|
||||
call ompi_file_iread_at_all_f(fh%MPI_VAL,offset,buf,count,&
|
||||
datatype%MPI_VAL,request%MPI_VAL,c_ierror)
|
||||
if (present(ierror)) ierror = c_ierror
|
||||
|
||||
end subroutine MPI_File_iread_at_all_f08
|
26
ompi/mpi/fortran/use-mpi-f08/file_iwrite_all_f08.F90
Обычный файл
26
ompi/mpi/fortran/use-mpi-f08/file_iwrite_all_f08.F90
Обычный файл
@ -0,0 +1,26 @@
|
||||
! -*- f90 -*-
|
||||
!
|
||||
! Copyright (c) 2010-2012 Cisco Systems, Inc. All rights reserved.
|
||||
! Copyright (c) 2009-2012 Los Alamos National Security, LLC.
|
||||
! All Rights reserved.
|
||||
! $COPYRIGHT$
|
||||
|
||||
#include "ompi/mpi/fortran/configure-fortran-output.h"
|
||||
|
||||
subroutine MPI_File_iwrite_all_f08(fh,buf,count,datatype,request,ierror)
|
||||
use :: mpi_f08_types, only : MPI_File, MPI_Datatype, MPI_Request
|
||||
use :: mpi_f08, only : ompi_file_iwrite_all_f
|
||||
implicit none
|
||||
TYPE(MPI_File), INTENT(IN) :: fh
|
||||
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: buf
|
||||
INTEGER, INTENT(IN) :: count
|
||||
TYPE(MPI_Datatype), INTENT(IN) :: datatype
|
||||
TYPE(MPI_Request), INTENT(OUT) :: request
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
integer :: c_ierror
|
||||
|
||||
call ompi_file_iwrite_all_f(fh%MPI_VAL,buf,count,&
|
||||
datatype%MPI_VAL,request%MPI_VAL,c_ierror)
|
||||
if (present(ierror)) ierror = c_ierror
|
||||
|
||||
end subroutine MPI_File_iwrite_all_f08
|
27
ompi/mpi/fortran/use-mpi-f08/file_iwrite_at_all_f08.F90
Обычный файл
27
ompi/mpi/fortran/use-mpi-f08/file_iwrite_at_all_f08.F90
Обычный файл
@ -0,0 +1,27 @@
|
||||
! -*- f90 -*-
|
||||
!
|
||||
! Copyright (c) 2009-2012 Cisco Systems, Inc. All rights reserved.
|
||||
! Copyright (c) 2009-2012 Los Alamos National Security, LLC.
|
||||
! All Rights reserved.
|
||||
! $COPYRIGHT$
|
||||
|
||||
#include "ompi/mpi/fortran/configure-fortran-output.h"
|
||||
|
||||
subroutine MPI_File_iwrite_at_all_f08(fh,offset,buf,count,datatype,request,ierror)
|
||||
use :: mpi_f08_types, only : MPI_File, MPI_Datatype, MPI_Request, MPI_OFFSET_KIND
|
||||
use :: mpi_f08, only : ompi_file_iwrite_at_all_f
|
||||
implicit none
|
||||
TYPE(MPI_File), INTENT(IN) :: fh
|
||||
INTEGER(MPI_OFFSET_KIND), INTENT(IN) :: offset
|
||||
OMPI_FORTRAN_IGNORE_TKR_TYPE, INTENT(IN) :: buf
|
||||
INTEGER, INTENT(IN) :: count
|
||||
TYPE(MPI_Datatype), INTENT(IN) :: datatype
|
||||
TYPE(MPI_Request), INTENT(OUT) :: request
|
||||
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
|
||||
integer :: c_ierror
|
||||
|
||||
call ompi_file_iwrite_at_all_f(fh%MPI_VAL,offset,buf,count,&
|
||||
datatype%MPI_VAL,request%MPI_VAL,c_ierror)
|
||||
if (present(ierror)) ierror = c_ierror
|
||||
|
||||
end subroutine MPI_File_iwrite_at_all_f08
|
@ -377,6 +377,35 @@ end subroutine PMPI_File_iread
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iread_all
|
||||
|
||||
subroutine MPI_File_iread_all(fh, buf, count, datatype, request&
|
||||
, ierror)
|
||||
integer, intent(in) :: fh
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine MPI_File_iread_all
|
||||
|
||||
end interface
|
||||
|
||||
interface PMPI_File_iread_all
|
||||
|
||||
subroutine PMPI_File_iread_all(fh, buf, count, datatype, request&
|
||||
, ierror)
|
||||
integer, intent(in) :: fh
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine PMPI_File_iread_all
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iread_at
|
||||
|
||||
@ -412,6 +441,39 @@ end subroutine PMPI_File_iread_at
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iread_at_all
|
||||
|
||||
subroutine MPI_File_iread_at_all(fh, offset, buf, count, datatype, &
|
||||
request, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: fh
|
||||
integer(kind=MPI_OFFSET_KIND), intent(in) :: offset
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine MPI_File_iread_at_all
|
||||
|
||||
end interface
|
||||
|
||||
interface PMPI_File_iread_at_all
|
||||
|
||||
subroutine PMPI_File_iread_at_all(fh, offset, buf, count, datatype, &
|
||||
request, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: fh
|
||||
integer(kind=MPI_OFFSET_KIND), intent(in) :: offset
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@ :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine PMPI_File_iread_at_all
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iread_shared
|
||||
|
||||
@ -474,6 +536,35 @@ end subroutine PMPI_File_iwrite
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iwrite_all
|
||||
|
||||
subroutine MPI_File_iwrite_all(fh, buf, count, datatype, request&
|
||||
, ierror)
|
||||
integer, intent(in) :: fh
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine MPI_File_iwrite_all
|
||||
|
||||
end interface
|
||||
|
||||
interface PMPI_File_iwrite_all
|
||||
|
||||
subroutine PMPI_File_iwrite_all(fh, buf, count, datatype, request&
|
||||
, ierror)
|
||||
integer, intent(in) :: fh
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine PMPI_File_iwrite_all
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iwrite_at
|
||||
|
||||
@ -509,6 +600,39 @@ end subroutine PMPI_File_iwrite_at
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iwrite_at_all
|
||||
|
||||
subroutine MPI_File_iwrite_at_all(fh, offset, buf, count, datatype, &
|
||||
request, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: fh
|
||||
integer(kind=MPI_OFFSET_KIND), intent(in) :: offset
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine MPI_File_iwrite_at_all
|
||||
|
||||
end interface
|
||||
|
||||
interface PMPI_File_iwrite_at_all
|
||||
|
||||
subroutine PMPI_File_iwrite_at_all(fh, offset, buf, count, datatype, &
|
||||
request, ierror)
|
||||
include 'mpif-config.h'
|
||||
integer, intent(in) :: fh
|
||||
integer(kind=MPI_OFFSET_KIND), intent(in) :: offset
|
||||
@OMPI_FORTRAN_IGNORE_TKR_PREDECL@ buf
|
||||
@OMPI_FORTRAN_IGNORE_TKR_TYPE@, intent(in) :: buf
|
||||
integer, intent(in) :: count
|
||||
integer, intent(in) :: datatype
|
||||
integer, intent(out) :: request
|
||||
integer, intent(out) :: ierror
|
||||
end subroutine PMPI_File_iwrite_at_all
|
||||
|
||||
end interface
|
||||
|
||||
interface MPI_File_iwrite_shared
|
||||
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user