[mpich] MPICH primary repository branch, master, updated. v3.0.2-27-g780133c
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "MPICH primary repository". The branch, master has been updated via 780133cd0fc51132438a42a4d013279989dc122b (commit) via 8a9a743fcd6423a8bc82097dd6320207c1553395 (commit) via 006dd97e9cb3309fa6e863a8a29c13c554e6e526 (commit) via 4638b3b3e7ae85c1ae61bcd61bb69eb27b5b522d (commit) from 89407ecc99f5b08a6fd44132ae44faa99dc9a71e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://git.mpich.org/mpich.git/commitdiff/780133cd0fc51132438a42a4d013279989... commit 780133cd0fc51132438a42a4d013279989dc122b Author: William Gropp <[email protected]> Date: Thu Feb 21 12:28:29 2013 -0600 More files for user error handler tests diff --git a/test/mpi/errors/f90/Makefile.am b/test/mpi/errors/f90/Makefile.am new file mode 100644 index 0000000..1c8b9ed --- /dev/null +++ b/test/mpi/errors/f90/Makefile.am @@ -0,0 +1,13 @@ +# -*- Mode: Makefile; -*- +# vim: set ft=automake : +# +# (C) 2011 by Argonne National Laboratory. +# See COPYRIGHT in top-level directory. +# + +include $(top_srcdir)/Makefile_f90.mtest + +EXTRA_DIST = testlist + +SUBDIRS = errhan +DIST_SUBDIRS = errhan diff --git a/test/mpi/errors/f90/testlist b/test/mpi/errors/f90/testlist new file mode 100644 index 0000000..4723c12 --- /dev/null +++ b/test/mpi/errors/f90/testlist @@ -0,0 +1 @@ +errhan http://git.mpich.org/mpich.git/commitdiff/8a9a743fcd6423a8bc82097dd6320207c1... commit 8a9a743fcd6423a8bc82097dd6320207c1553395 Author: William Gropp <[email protected]> Date: Thu Feb 21 11:55:25 2013 -0600 Files that were modified to supprt the tests of user-defined error handlers from Fortran diff --git a/.gitignore b/.gitignore index 83a1548..60ce4db 100644 --- a/.gitignore +++ b/.gitignore @@ -158,6 +158,8 @@ Makefile.am-stamp /test/mpi/f90/ext/stamp-Makefile.am /test/mpi/f90/io/Makefile.am /test/mpi/f90/rma/Makefile.am +/test/mpi/errors/f90/errhan/Makefile.am +/test/mpi/errors/f90/errhan/testlist # created solely from the f77 counterpart dirs /test/mpi/f90/coll/ diff --git a/autogen.sh b/autogen.sh index cec8ecc..f0a560a 100755 --- a/autogen.sh +++ b/autogen.sh @@ -866,6 +866,15 @@ if [ -x ./maint/f77tof90 -a $do_f77tof90 = "yes" ] ; then maint/f77tof90 $dir test/mpi/f90/$leafDir Makefile.am Makefile.ap echo "timestamp" > test/mpi/f90/$leafDir/Makefile.am-stamp done + for dir in test/mpi/errors/f77/* ; do + if [ ! -d $dir ] ; then continue ; fi + leafDir=`basename $dir` + if [ ! -d test/mpi/errors/f90/$leafDir ] ; then + mkdir test/mpi/errors/f90/$leafDir + fi + maint/f77tof90 $dir test/mpi/errors/f90/$leafDir Makefile.am Makefile.ap + echo "timestamp" > test/mpi/errors/f90/$leafDir/Makefile.am-stamp + done echo "done" fi diff --git a/test/mpi/configure.ac b/test/mpi/configure.ac index f0da35b..0106e6c 100644 --- a/test/mpi/configure.ac +++ b/test/mpi/configure.ac @@ -1406,7 +1406,11 @@ AC_OUTPUT(maint/testmerge \ errors/cxx/errhan/Makefile \ errors/cxx/io/Makefile \ errors/f77/Makefile \ + errors/f77/errhan/Makefile \ + errors/f77/errhan/addsize.h \ + errors/f77/errhan/iooffset.h \ errors/f90/Makefile \ + errors/f90/errhan/Makefile \ manual/Makefile \ manual/manyconnect \ manual/mpi_t/Makefile \ diff --git a/test/mpi/errors/f77/Makefile.am b/test/mpi/errors/f77/Makefile.am index a3becfb..9b9a68a 100644 --- a/test/mpi/errors/f77/Makefile.am +++ b/test/mpi/errors/f77/Makefile.am @@ -9,6 +9,6 @@ include $(top_srcdir)/Makefile_f77.mtest EXTRA_DIST = testlist -# nothing tested in here for now... -SUBDIRS = +SUBDIRS = errhan +DIST_SUBDIRS = errhan diff --git a/test/mpi/errors/f77/testlist b/test/mpi/errors/f77/testlist index fd69f0b..4723c12 100644 --- a/test/mpi/errors/f77/testlist +++ b/test/mpi/errors/f77/testlist @@ -1 +1 @@ -# Empty for now +errhan http://git.mpich.org/mpich.git/commitdiff/006dd97e9cb3309fa6e863a8a29c13c554... commit 006dd97e9cb3309fa6e863a8a29c13c554e6e526 Author: William Gropp <[email protected]> Date: Thu Feb 21 08:59:08 2013 -0600 Added tests for user-defined error handlers in Fortran diff --git a/test/mpi/errors/f77/errhan/Makefile.am b/test/mpi/errors/f77/errhan/Makefile.am new file mode 100644 index 0000000..56f28c1 --- /dev/null +++ b/test/mpi/errors/f77/errhan/Makefile.am @@ -0,0 +1,18 @@ +# -*- Mode: Makefile; -*- +# vim: set ft=automake : +# +# (C) 2013 by Argonne National Laboratory. +# See COPYRIGHT in top-level directory. +# + +include $(top_srcdir)/Makefile_f77.mtest + +EXTRA_DIST = testlist + +AM_DEFAULT_SOURCE_EXT = .f + +## for all programs that are just built from the single corresponding source +## file, we don't need per-target _SOURCES rules, automake will infer them +## correctly +noinst_PROGRAMS = uerrhandf + diff --git a/test/mpi/errors/f77/errhan/addsize.h.in b/test/mpi/errors/f77/errhan/addsize.h.in new file mode 100644 index 0000000..320b3a5 --- /dev/null +++ b/test/mpi/errors/f77/errhan/addsize.h.in @@ -0,0 +1,6 @@ +C -*- Mode: Fortran; -*- +C +C (C) 2003 by Argonne National Laboratory. +C See COPYRIGHT in top-level directory. +C + @F77_MPI_ADDRESS@ asize diff --git a/test/mpi/errors/f77/errhan/iooffset.h.in b/test/mpi/errors/f77/errhan/iooffset.h.in new file mode 100644 index 0000000..61cd7c6 --- /dev/null +++ b/test/mpi/errors/f77/errhan/iooffset.h.in @@ -0,0 +1,6 @@ +C -*- Mode: Fortran; -*- +C +C (C) 2003 by Argonne National Laboratory. +C See COPYRIGHT in top-level directory. +C + @F77_MPI_OFFSET@ offset diff --git a/test/mpi/errors/f77/errhan/testlist b/test/mpi/errors/f77/errhan/testlist new file mode 100644 index 0000000..b98ab00 --- /dev/null +++ b/test/mpi/errors/f77/errhan/testlist @@ -0,0 +1 @@ +uerrhandf 1 diff --git a/test/mpi/errors/f77/errhan/uerrhandf.f b/test/mpi/errors/f77/errhan/uerrhandf.f new file mode 100644 index 0000000..cd3c8bd --- /dev/null +++ b/test/mpi/errors/f77/errhan/uerrhandf.f @@ -0,0 +1,140 @@ +C -*- Mode: Fortran; -*- +C +C (C) 2013 by Argonne National Laboratory. +C See COPYRIGHT in top-level directory. +C + program main + implicit none + include 'mpif.h' + include 'addsize.h' + include 'iooffset.h' + integer ierr, rank, i + integer errs + external comm_errh_fn, win_errh_fn, file_errh_fn + integer comm_errh, win_errh, file_errh + integer winbuf(2), winh, wdup, wdsize, sizeofint, id + integer fh, status(MPI_STATUS_SIZE) + common /ec/ iseen + integer iseen(3) + save /ec/ + + iseen(1) = 0 + iseen(2) = 0 + iseen(3) = 0 + ierr = -1 + errs = 0 + call mtest_init( ierr ) + + call mpi_type_size( MPI_INTEGER, sizeofint, ierr ) + + call mpi_comm_create_errhandler( comm_errh_fn, comm_errh, ierr ) + if (ierr .ne. MPI_SUCCESS) then + call mtestprinterrormsg( "Comm_create_errhandler:", ierr ) + errs = errs + 1 + endif + call mpi_win_create_errhandler( win_errh_fn, win_errh, ierr ) + if (ierr .ne. MPI_SUCCESS) then + call mtestprinterrormsg( "Win_create_errhandler:", ierr ) + errs = errs + 1 + endif + call mpi_file_create_errhandler( file_errh_fn, file_errh, ierr ) + if (ierr .ne. MPI_SUCCESS) then + call mtestprinterrormsg( "File_create_errhandler:", ierr ) + errs = errs + 1 + endif +C + call mpi_comm_dup( MPI_COMM_WORLD, wdup, ierr ) + call mpi_comm_set_errhandler( wdup, comm_errh, ierr ) + call mpi_comm_size( wdup, wdsize, ierr ) + call mpi_send( id, 1, MPI_INTEGER, wdsize, -37, wdup, ierr ) + if (ierr .eq. MPI_SUCCESS) then + print *, ' Failed to detect error in use of MPI_SEND' + errs = errs + 1 + else + if (iseen(1) .ne. 1) then + errs = errs + 1 + print *, ' Failed to increment comm error counter' + endif + endif + + call mpi_win_create( winbuf, 2*sizeofint, sizeofint, MPI_INFO_NULL + $ , wdup, winh, ierr ) + if (ierr .ne. MPI_SUCCESS) then + call mtestprinterrormsg( "Win_create:", ierr ) + errs = errs + 1 + endif + call mpi_win_set_errhandler( winh, win_errh, ierr ) + asize = 0 + call mpi_put( winbuf, 1, MPI_INT, wdsize, asize, 1, MPI_INT, winh, + $ ierr ) + if (ierr .eq. MPI_SUCCESS) then + print *, ' Failed to detect error in use of MPI_PUT' + errs = errs + 1 + else + if (iseen(3) .ne. 1) then + errs = errs + 1 + print *, ' Failed to increment win error counter' + endif + endif + + call mpi_file_open( MPI_COMM_SELF, 'ftest', MPI_MODE_CREATE + + $ MPI_MODE_RDWR + MPI_MODE_DELETE_ON_CLOSE, MPI_INFO_NULL, fh, + $ ierr ) + if (ierr .ne. MPI_SUCCESS) then + call mtestprinterrormsg( "File_open:", ierr ) + errs = errs + 1 + endif + call mpi_file_set_errhandler( fh, file_errh, ierr ) + offset = -100 + call mpi_file_read_at( fh, offset, winbuf, 1, MPI_INTEGER, status, + $ ierr ) + if (ierr .eq. MPI_SUCCESS) then + print *, ' Failed to detect error in use of MPI_PUT' + errs = errs + 1 + else + if (iseen(2) .ne. 1) then + errs = errs + 1 + print *, ' Failed to increment file error counter' + endif + endif + + call mpi_comm_free( wdup, ierr ) + call mpi_win_free( winh, ierr ) + call mpi_file_close( fh, ierr ) + + call mpi_errhandler_free( win_errh, ierr ) + call mpi_errhandler_free( comm_errh, ierr ) + call mpi_errhandler_free( file_errh, ierr ) + + call mtest_finalize( errs ) + call mpi_finalize( ierr ) + end +C + subroutine comm_errh_fn( comm, ec ) + integer comm, ec + common /ec/ iseen + integer iseen(3) + save /ec/ +C + iseen(1) = iseen(1) + 1 +C + end +C + subroutine win_errh_fn( win, ec ) + integer win, ec + common /ec/ iseen + integer iseen(3) + save /ec/ +C + iseen(3) = iseen(3) + 1 +C + end + subroutine file_errh_fn( fh, ec ) + integer fh, ec + common /ec/ iseen + integer iseen(3) + save /ec/ +C + iseen(2) = iseen(2) + 1 +C + end diff --git a/test/mpi/errors/f90/Makefile.am b/test/mpi/errors/f90/Makefile.am deleted file mode 100644 index 204a561..0000000 --- a/test/mpi/errors/f90/Makefile.am +++ /dev/null @@ -1,14 +0,0 @@ -# -*- Mode: Makefile; -*- -# vim: set ft=automake : -# -# (C) 2011 by Argonne National Laboratory. -# See COPYRIGHT in top-level directory. -# - -include $(top_srcdir)/Makefile_f90.mtest - -EXTRA_DIST = testlist - -# nothing tested in here for now... -SUBDIRS = - diff --git a/test/mpi/errors/f90/testlist b/test/mpi/errors/f90/testlist deleted file mode 100644 index fd69f0b..0000000 --- a/test/mpi/errors/f90/testlist +++ /dev/null @@ -1 +0,0 @@ -# Empty for now http://git.mpich.org/mpich.git/commitdiff/4638b3b3e7ae85c1ae61bcd61bb69eb27b... commit 4638b3b3e7ae85c1ae61bcd61bb69eb27b5b522d Author: William Gropp <[email protected]> Date: Fri Feb 15 09:24:42 2013 -0600 Added needed tests based on coverage analysis diff --git a/test/mpi/ToDo b/test/mpi/ToDo index 568a3c5..9c971a8 100644 --- a/test/mpi/ToDo +++ b/test/mpi/ToDo @@ -128,6 +128,25 @@ items listed here that are already sufficiently tested. 42. Keyval free (F90 and C++) 43. Type create indexed block 44. Type create resized +45. User-defined error handler invoked: + a. On comm from Fortran on communicator + b. On win from C++ and Fortran +46. Error output strings involving: + a. MPI_MODE_NOSTORE errors + b. MPI_MODE_NOCHECK errors + c. MPI_MODE_NOPUT errors + d. MPI_MODE_NOSUCCEED errors + e. MPI_MODE_NOPRECEED errors + f. Unknown assert value in window mode (as above) + g. Datatype = 0x0 + h. MPI_Op = MPI_REPLACE + i. MPI_UNDEFINED + j. MPI_IN_PLACE + k. MPI_FILE_NULL + l. MPI_WIN_NULL + m. MPI_REQUEST_NULL + o. MPI_Count output (Note dangerous and improper assert! in errutil.c!) +47. Use of "CombineSpecificCodes" (static in file); MPIR_Err_combine_codes Also, Replace the calls to MPIR_Group_release in Finalize with ----------------------------------------------------------------------- Summary of changes: .gitignore | 2 + autogen.sh | 9 ++ test/mpi/ToDo | 19 +++ test/mpi/configure.ac | 4 + test/mpi/errors/f77/Makefile.am | 4 +- test/mpi/errors/{attr => f77/errhan}/Makefile.am | 8 +- .../{f77/rma => errors/f77/errhan}/addsize.h.in | 0 .../{f77/io => errors/f77/errhan}/iooffset.h.in | 0 test/mpi/errors/f77/errhan/testlist | 1 + test/mpi/errors/f77/errhan/uerrhandf.f | 140 ++++++++++++++++++++ test/mpi/errors/f77/testlist | 2 +- test/mpi/errors/f90/Makefile.am | 5 +- test/mpi/errors/f90/testlist | 2 +- 13 files changed, 186 insertions(+), 10 deletions(-) copy test/mpi/errors/{attr => f77/errhan}/Makefile.am (67%) copy test/mpi/{f77/rma => errors/f77/errhan}/addsize.h.in (100%) copy test/mpi/{f77/io => errors/f77/errhan}/iooffset.h.in (100%) create mode 100644 test/mpi/errors/f77/errhan/testlist create mode 100644 test/mpi/errors/f77/errhan/uerrhandf.f hooks/post-receive -- MPICH primary repository
participants (1)
-
noreply@mpich.org