summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2003-01-03 19:37:10 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2003-01-03 19:37:10 (GMT)
commit8bd4ac2b3883db921a20de53130e274d7c456fd5 (patch)
tree95dc73fa4f521eade0f20583936d0ef42e00deec
parent3494014c728bde2666eaba74f6f5b25fe7e0f1c2 (diff)
downloadhdf5-8bd4ac2b3883db921a20de53130e274d7c456fd5.zip
hdf5-8bd4ac2b3883db921a20de53130e274d7c456fd5.tar.gz
hdf5-8bd4ac2b3883db921a20de53130e274d7c456fd5.tar.bz2
[svn-r6231] Purpose:
new feature Description: Added MPICH/MPE instrumentation support. All source code are bracketed by the macro H5_HAVE_MPE. Use "--enable-mpe" to configure it in. Currently only worked in Eirene because the MPE library is not installed in all machines yet. Platforms tested: Tested h5committest {arabica (fortran), eirene (fortran, C++) modi4 (parallel, fortran)}? Yep. Other platforms/configurations tested? --enable-mpe feature tested in Eirene.
-rwxr-xr-xconfigure116
-rw-r--r--configure.in39
2 files changed, 151 insertions, 4 deletions
diff --git a/configure b/configure
index 712f879..861fe77 100755
--- a/configure
+++ b/configure
@@ -1019,6 +1019,7 @@ Optional Features:
is disabled.
--enable-parallel=TYPE Search for MPI-IO and MPI support files
--enable-fphdf5 Enable the Flexible Parallel HDF5 interface
+ --enable-mpe Enable MPE instrumentation [default=no]
--enable-filters=all Turn on all internal I/O filters. One may also
specify a comma-separated list of filters or the
word no. The default is all internal I/O filters.
@@ -4106,7 +4107,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
case $host in
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 4109 "configure"' > conftest.$ac_ext
+ echo '#line 4110 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -4647,7 +4648,7 @@ chmod -w .
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
compiler_c_o=no
-if { (eval echo configure:4650: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
+if { (eval echo configure:4651: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
if test -s out/conftest.err; then
@@ -6458,7 +6459,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 6461 "configure"
+#line 6462 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -6556,7 +6557,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 6559 "configure"
+#line 6560 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -30081,6 +30082,109 @@ _ACEOF
fi
fi
+ MPE=yes
+# Check whether --enable-mpe or --disable-mpe was given.
+if test "${enable_mpe+set}" = set; then
+ enableval="$enable_mpe"
+
+else
+ enableval=no
+fi;
+
+echo "$as_me:$LINENO: checking for MPE instrumentation" >&5
+echo $ECHO_N "checking for MPE instrumentation... $ECHO_C" >&6
+case "X-$enableval" in
+ X-|X-no|X-none)
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+ unset MPE
+ ;;
+
+ X-yes)
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+
+echo "$as_me:$LINENO: checking for main in -lmpe" >&5
+echo $ECHO_N "checking for main in -lmpe... $ECHO_C" >&6
+if test "${ac_cv_lib_mpe_main+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lmpe $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line $LINENO "configure"
+#include "confdefs.h"
+
+
+#ifdef F77_DUMMY_MAIN
+# ifdef __cplusplus
+ extern "C"
+# endif
+ int F77_DUMMY_MAIN() { return 1; }
+#endif
+int
+main ()
+{
+main ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_mpe_main=yes
+else
+ echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_mpe_main=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_mpe_main" >&5
+echo "${ECHO_T}$ac_cv_lib_mpe_main" >&6
+if test $ac_cv_lib_mpe_main = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBMPE 1
+_ACEOF
+
+ LIBS="-lmpe $LIBS"
+
+else
+ unset MPE
+fi
+
+ ;;
+
+ *)
+ echo "$as_me:$LINENO: result: error" >&5
+echo "${ECHO_T}error" >&6
+ { { echo "$as_me:$LINENO: error: \'$enableval\' is not a valid MPE value" >&5
+echo "$as_me: error: \'$enableval\' is not a valid MPE value" >&2;}
+ { (exit 1); exit 1; }; }
+ unset MPE
+ ;;
+esac
+
+if test "X-$MPE" = "X-yes"; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_MPE 1
+_ACEOF
+
+fi
+
echo "$as_me:$LINENO: checking for I/O filters" >&5
echo $ECHO_N "checking for I/O filters... $ECHO_C" >&6
# Check whether --enable-filters or --disable-filters was given.
@@ -30914,6 +31018,7 @@ s,@PARALLEL@,$PARALLEL,;t t
s,@RUNSERIAL@,$RUNSERIAL,;t t
s,@RUNPARALLEL@,$RUNPARALLEL,;t t
s,@TESTPARALLEL@,$TESTPARALLEL,;t t
+s,@MPE@,$MPE,;t t
s,@FILTERS@,$FILTERS,;t t
s,@H5_VERSION@,$H5_VERSION,;t t
s,@CONFIG_DATE@,$CONFIG_DATE,;t t
@@ -31729,6 +31834,9 @@ esac
PRINT_N " Linux Large File Support (LFS)"
IF_ENABLED_DISABLED "$LINUX_LFS"
+PRINT_N " MPE"
+IF_YES_NO "$MPE"
+
PRINT_N " Pablo"
IF_YES_NO "$HAVE_PABLO"
diff --git a/configure.in b/configure.in
index fced9da..0e1640b 100644
--- a/configure.in
+++ b/configure.in
@@ -1725,6 +1725,42 @@ dnl
fi
dnl ----------------------------------------------------------------------
+dnl Do we want MPE instrumentation feature on?
+dnl This must be done after enable-parallel is checked since it depends on
+dnl a mpich compiler.
+dnl
+AC_SUBST(MPE) MPE=yes
+AC_ARG_ENABLE([mpe],
+ [AC_HELP_STRING([--enable-mpe],
+ [Enable MPE instrumentation [default=no]])],,
+ enableval=no)
+
+AC_MSG_CHECKING([for MPE instrumentation])
+case "X-$enableval" in
+ X-|X-no|X-none)
+ AC_MSG_RESULT(no)
+ unset MPE
+ ;;
+
+ X-yes)
+ AC_MSG_RESULT(yes)
+
+ dnl Check if MPE library is available
+ AC_CHECK_LIB(mpe,main,, unset MPE)
+ ;;
+
+ *)
+ AC_MSG_RESULT(error)
+ AC_MSG_ERROR(\'$enableval\' is not a valid MPE value)
+ unset MPE
+ ;;
+esac
+
+if test "X-$MPE" = "X-yes"; then
+ AC_DEFINE(HAVE_MPE, 1, [Define if we have MPE support])
+fi
+
+dnl ----------------------------------------------------------------------
dnl Turn on internal I/O filters by setting macros in header files
dnl Internal I/O filters are contained entirely within the library and do
dnl not depend on external headers or libraries. The shuffle filter is
@@ -2148,6 +2184,9 @@ esac
PRINT_N " Linux Large File Support (LFS)"
IF_ENABLED_DISABLED "$LINUX_LFS"
+PRINT_N " MPE"
+IF_YES_NO "$MPE"
+
PRINT_N " Pablo"
IF_YES_NO "$HAVE_PABLO"