[OMPI devel] small configure nits

2006-05-06 Thread Ralf Wildenhues
Hi there,

A very minor nit in OpenMPI, concerning autotools: I think it's
better to specify the arguments to AC_CONFIG_AUX_DIR and _MACRO_DIR
without leading "./", since if those name end up in Makefile targets,
BSD make won't have problems with VPATH lookup.  (Maybe this should be
noted in the Autoconf documentation.)

Conversely, if that has been done on purpose, say, to fix some issue,
then I'd like to know about it.  FWIW, it's present in LAM as well.

Cheers,
Ralf

Index: configure.ac
===
--- configure.ac(revision 9831)
+++ configure.ac(working copy)
@@ -33,8 +33,8 @@
 [m4_normalize(esyscmd([config/ompi_get_version.sh VERSION --base]))],
 [http://www.open-mpi.org/community/help/], [openmpi])
 AC_PREREQ(2.58)
-AC_CONFIG_AUX_DIR(./config)
-AC_CONFIG_MACRO_DIR(./config)
+AC_CONFIG_AUX_DIR(config)
+AC_CONFIG_MACRO_DIR(config)

 # Get our platform support file.  This has to be done very, very early
 # because it twiddles random bits of autoconf


Re: [OMPI devel] [OMPI users] pnetcdf & Open MPI

2006-05-06 Thread Dries Kimpe
Dries Kimpe wrote:
> 
> 
> The problem is that the OpenMPI group takes ROMIO as-is from an older 
> release. Then they pass
> MPI_COMBINER_SUBARRAY as-is to ROMIO, which in that release it does not 
> understand. Then ROMIO blows up.
> 
> 
> I'll try recompiling Open MPI with a newer version of ROMIO.
> 

Found the problem;
mca/io/romio/romio/adio/common/flatten.c  contains conditional code for
MPI implementations not supporting COMBINER_SUBARRAY, COMBINER_DARRAY
and COMBINER_DUP.

OpenMPI supports these, but fails to #define the necessary symbols:

MPIIMPL_HAVE_MPI_COMBINER_DARRAY
MPIIMPL_HAVE_MPI_COMBINER_SUBARRAY
MPIIMPL_HAVE_MPI_COMBINER_DUP

Because of this, ROMIO excludes support for these datatype constructors.

Solution:
remove the #ifdef/#endif in flatten.c or #define the correct symbols.

I verified that this solves the problem. (pnetcdf tests work now).

Atteched patch removes the conditional code.

  Greetings,
  Dries

Index: flatten.c
===
--- flatten.c   (revision 9836)
+++ flatten.c   (working copy)
@@ -116,7 +116,6 @@
 MPI_Type_get_contents(datatype, nints, nadds, ntypes, ints, adds, types);

 switch (combiner) {
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_DUP
 case MPI_COMBINER_DUP:
 MPI_Type_get_envelope(types[0], &old_nints, &old_nadds,
  &old_ntypes, &old_combiner); 
@@ -124,8 +123,6 @@
if ((old_combiner != MPI_COMBINER_NAMED) && (!old_is_contig))
 ADIOI_Flatten(types[0], flat, st_offset, curr_index);
 break;
-#endif
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_SUBARRAY
 case MPI_COMBINER_SUBARRAY:
 {
int dims = ints[0];
@@ -142,8 +139,6 @@
MPI_Type_free(&stype);
}
break;
-#endif
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_DARRAY
 case MPI_COMBINER_DARRAY:
{
int dims = ints[2];
@@ -163,7 +158,6 @@
MPI_Type_free(&dtype);
}
break;
-#endif
 case MPI_COMBINER_CONTIGUOUS:
top_count = ints[0];
 MPI_Type_get_envelope(types[0], &old_nints, &old_nadds,
@@ -523,7 +517,6 @@
 MPI_Type_get_contents(datatype, nints, nadds, ntypes, ints, adds, types);

 switch (combiner) {
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_DUP
 case MPI_COMBINER_DUP:
 MPI_Type_get_envelope(types[0], &old_nints, &old_nadds,
   &old_ntypes, &old_combiner); 
@@ -535,8 +528,6 @@
(*curr_index)++;
}
 break;
-#endif
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_SUBARRAY
 case MPI_COMBINER_SUBARRAY:
 {
int dims = ints[0];
@@ -557,8 +548,6 @@

}
break;
-#endif
-#ifdef MPIIMPL_HAVE_MPI_COMBINER_DARRAY
 case MPI_COMBINER_DARRAY:
{
int dims = ints[2];
@@ -581,7 +570,6 @@
MPI_Type_free(&dtype);
}
break;
-#endif
 case MPI_COMBINER_CONTIGUOUS:
 top_count = ints[0];
 MPI_Type_get_envelope(types[0], &old_nints, &old_nadds,

___
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users