summaryrefslogtreecommitdiffstats
path: root/fortran/testpar
diff options
context:
space:
mode:
authorScot Breitenfeld <brtnfld@hdfgroup.org>2012-09-28 15:31:22 (GMT)
committerScot Breitenfeld <brtnfld@hdfgroup.org>2012-09-28 15:31:22 (GMT)
commitc783decba564668b94009236d9b74f888fbae006 (patch)
tree222cd5851f208f69e4e1bc324eb1660ecbefcfc8 /fortran/testpar
parent2de91133e05ceb445645b3ac85e2a3ab7d792914 (diff)
downloadhdf5-c783decba564668b94009236d9b74f888fbae006.zip
hdf5-c783decba564668b94009236d9b74f888fbae006.tar.gz
hdf5-c783decba564668b94009236d9b74f888fbae006.tar.bz2
[svn-r22840] Merged changes from the trunk into the branch,
svn merge -r22479:22826 https://svn.hdfgroup.uiuc.edu/hdf5/trunk/fortran tested: jam (gnu, intel, pgi) koala (gnu, pgi)
Diffstat (limited to 'fortran/testpar')
-rw-r--r--fortran/testpar/hyper.f9019
1 files changed, 19 insertions, 0 deletions
diff --git a/fortran/testpar/hyper.f90 b/fortran/testpar/hyper.f90
index 1d65ae1..1a580ca 100644
--- a/fortran/testpar/hyper.f90
+++ b/fortran/testpar/hyper.f90
@@ -50,6 +50,7 @@ SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors)
INTEGER :: icount ! number of elements in array
CHARACTER(len=80) :: filename ! filename
INTEGER :: i
+ INTEGER :: actual_io_mode ! The type of I/O performed by this process
!//////////////////////////////////////////////////////////
! initialize the array data between the processes (3)
@@ -180,6 +181,24 @@ SUBROUTINE hyper(length,do_collective,do_chunk, mpi_size, mpi_rank, nerrors)
CALL check("h5dwrite_f", hdferror, nerrors)
+ ! Check h5pget_mpio_actual_io_mode_f function
+ CALL h5pget_mpio_actual_io_mode_f(dxpl_id, actual_io_mode, hdferror)
+ CALL check("h5pget_mpio_actual_io_mode_f", hdferror, nerrors)
+
+ IF(do_collective.AND.do_chunk)THEN
+ IF(actual_io_mode.NE.H5D_MPIO_CHUNK_COLLECTIVE_F)THEN
+ CALL check("h5pget_mpio_actual_io_mode_f", -1, nerrors)
+ ENDIF
+ ELSEIF(.NOT.do_collective)THEN
+ IF(actual_io_mode.NE.H5D_MPIO_NO_COLLECTIVE_F)THEN
+ CALL check("h5pget_mpio_actual_io_mode_f", -1, nerrors)
+ ENDIF
+ ELSEIF( do_collective.AND.(.NOT.do_chunk))THEN
+ IF(actual_io_mode.NE.H5D_MPIO_CONTIG_COLLECTIVE_F)THEN
+ CALL check("h5pget_mpio_actual_io_mode_f", -1, nerrors)
+ ENDIF
+ ENDIF
+
!//////////////////////////////////////////////////////////
! close HDF5 I/O
!//////////////////////////////////////////////////////////