Skip to content

Commit dc832f2

Browse files
committed
Require MPICH 4.2.2 to enable MPI 4.0 large-count feature
ROMIO starts to support MPI 4.0's large-count feature in MPICH version 4.2.2. If an MPI datatype was created using a large-count constructor will failed intenrally in ROMIO when 4.2.1 and prior was used.
1 parent 1618a8b commit dc832f2

1 file changed

Lines changed: 18 additions & 1 deletion

File tree

configure.ac

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1341,7 +1341,24 @@ AC_CHECK_FUNCS([MPI_Type_create_subarray_c \
13411341
# set to no
13421342
UD_MSG_DEBUG([have_mpi_large_count_apis=$have_mpi_large_count_apis])
13431343
if test "x$have_mpi_large_count_apis" = "xyes" ; then
1344-
AC_DEFINE(HAVE_MPI_LARGE_COUNT, 1)
1344+
if test "x$ax_cv_mpi_compiler_vendor" = "xMPICH" ; then
1345+
# MPICH must be at least version 4.2.2 (ROMIO started to support MPI
1346+
# 4.0's large count feature)
1347+
AX_COMPARE_VERSION([${ax_cv_mpi_compiler_version}],[ge],[4.2.2])
1348+
if test "$ax_compare_version" = "true" ; then
1349+
AC_DEFINE(HAVE_MPI_LARGE_COUNT, 1)
1350+
else
1351+
have_mpi_large_count_apis=no
1352+
AC_MSG_NOTICE([
1353+
-----------------------------------------------------------------------
1354+
Disable the use of MPI 4.0 large-count feature, becase ROMIO of
1355+
MPICH 4.2.2 and later is required to support it, but the supplied
1356+
MPI is based on MPICH $ax_cv_mpi_compiler_version.
1357+
-----------------------------------------------------------------------])
1358+
fi
1359+
else # TODO: check other MPI vendors
1360+
AC_DEFINE(HAVE_MPI_LARGE_COUNT, 1)
1361+
fi
13451362
fi
13461363
AM_CONDITIONAL(TEST_LARGE_COUNT, [test x$have_mpi_large_count_apis = xyes])
13471364

0 commit comments

Comments
 (0)