----- "Dave Goodell" <goodell(a)mcs.anl.gov> wrote:
> On Jul 29, 2010, at 10:03 AM CDT, Anthony Chan wrote:
>
> >
> > On closer look, disgraph1.c is a MPI-2.2 only test. P's mpi.h
> > does not have the those MPI-2.2 topology functions. I think
> > we need to move the test MTEST_HAVE_MIN_MPI_VERSION(2,2) to
> test/mpi
> > configure and disable all MPI-2.2 tests in the Makefiles
> > and that seem to solve the related AC_TYPE_INT*_T tests in
> > test/mpi's configure, right ?
>
> What? No. The test code doesn't need any build system modifications
> AFAICT. The MTEST_HAVE_MIN_MPI_VERSION(X,Y) macro just checks the
> MPI_VERSION and MPI_SUBVERSION macro values.
>
> The bug is that the "size" and "rank" variables are defined inside the
> #if block, rather than outside of it. Just move them up from line 29
> to line 24.
Yes.
Shouldn't distgraph1.c not be compiled if MTEST_HAVE_MIN_MPI_VERSION(2,2) = false ?
I suggest moving the MPI version test to configure is because
if MTEST_HAVE_MIN_MPI_VERSION(2,2) is not true, the AC_TYPE_INT*_T
and AC_TYPE_UINT*_T in test/mpi/configure should not be attempted as well.
That seems to be a more consistent approach... unless you don't think we
need C99 type tests in configure.
A.Chan
>
> -Dave
>
>
> > A.Chan
> > ----- chan(a)mcs.anl.gov wrote:
> >
> >> Hi Bill,
> >>
> >> Were you able to do "make" successfully of test/mpi on AIX ?
> >> I couldn't. On our P, I got this failure
> >>
> >> /bgsys/drivers/ppcfloor/comm/xl/bin/mpixlc_r -DHAVE_CONFIG_H -I.
> >> -I/home/chan/mpich_work/mpich2/test/mpi/topo -I../include
> >> -I/home/chan/mpich_work/mpich2/test/mpi/topo/../include -c
> >> /home/chan/mpich_work/mpich2/test/mpi/topo/distgraph1.c
> >> "/home/chan/mpich_work/mpich2/test/mpi/topo/distgraph1.c", line
> >> 211.36: 1506-045 (S) Undeclared identifier size.
> >> "/home/chan/mpich_work/mpich2/test/mpi/topo/distgraph1.c", line
> >> 212.36: 1506-045 (S) Undeclared identifier rank.
> >> make: *** [distgraph1.o] Error 1
> >>
> >> Look inside distgraph1.c, the macro MTEST_HAVE_MIN_MPI_VERSION
> seems
> >> to be the problem.
> >> The macro is defined in include/mpitest.h, not sure how it works
> yet ?
> >> cc'd back to the group, maybe someone knew the answer.
> >>
> >> PS. I just added --with-config-args to test/mpi's configure, so I
> can
> >> do "test/mpi/configure --with-config-args=bgp_xl on P". Maybe
> >> you can add a .cfg in test/mpi/configargs for AIX. I seem
> >> to lose my access to blueprint, so can't add one for AIX.
> >>
> >> A.Chan
> >>
> >>
> >> ----- "William Gropp" <wgropp(a)illinois.edu> wrote:
> >>
> >>> No, I didn't try cross_compiling=yes because configure bleats
> about
> >> --
> >>>
> >>> host .
> >>> Bill
> >>>
> >>> On Jul 28, 2010, at 1:05 PM, Anthony Chan wrote:
> >>>
> >>>>
> >>>> Yes, autoconf documentation on cross-compile is minimal.
> >>>> I will add an INSTALL in test/mpi to document the issue.
> >>>>
> >>>> Did you try setting "cross_compiling=yes" instead of
> >>>> "--host=ibm-xlc --build=ibm-poe" ? They should be
> >>>> exactly the same except the configure warning (AFAIK)...
> >>>> Or you prefer typing "--host --build" ?
> >>>>
> >>>> A.Chan
> >>>>
> >>>> ----- "William Gropp" <wgropp(a)illinois.edu> wrote:
> >>>>
> >>>>> Sorry, the autoconf cross compilation documentation is
> atrocious.
> >>> I
> >>>>>
> >>>>> had to do
> >>>>>
> >>>>> configure CC=mpcc_r ... --host=ibm-xlc --build=ibm-poe
> >>>>>
> >>>>> to keep configure from complaining that it couldn't run C
> >> programs
> >>>
> >>>>> and
> >>>>>
> >>>>> that --host wasn't used (which, BTW, doesn't work).
> >>>>>
> >>>>> Bill
> >>>>>
> >>>>> On Jul 28, 2010, at 12:14 PM, chan(a)mcs.anl.gov wrote:
> >>>>>
> >>>>>>
> >>>>>> What is --cross ? The following configure works for
> >>>>>> the BG/P configure of test/mpi (the latest svn version),
> >>>>>> i.e. every test in configure passes
> >>>>>>
> >>>>>> mpich2/test/mpi/configure
> >>> 'CC=/bgsys/drivers/ppcfloor/comm/xl/bin/
> >>>>>> mpixlc_r'
> >>>>>> 'F77=/bgsys/drivers/ppcfloor/comm/xl/bin/mpixlf77_r'
> >>>>>> 'FC=/bgsys/drivers/ppcfloor/comm/xl/bin/mpixlf90_r'
> >>>>>> 'CXX=/bgsys/drivers/ppcfloor/comm/xl/bin/mpixlcxx_r'
> >>>>>> 'cross_compiling=yes'
> >>>>>>
> >>>>>> I used cross_compiling=yes to turn on the cross-compile
> support
> >>>>>> in autoconf instead of the recommended --host and --build (you
> >>>>>> will get a configure warning). Without cross_compiling=yes,
> >>>>>> test like AC_CHECK_SIZEOF will try to run a program, so
> >>>>>> AC_CHECK_SIZEOF will always return 0. The other option seems
> >>>>>> to be to define the CROSS_* that we used to do. IMHO,
> >>>>>> setting cross_compiling is a small price to pay and is much
> >>>>>> easier than setting 2 sets of compilers. I am planning
> >>>>>> to add --with-config-args that I did for ADLB, so user
> >>>>>> can specify things like --with-config-args=bgp or aix
> >>>>>> where file bgp.cfg or aix.cfg contains all compiler values
> >>>>>> and cross_compiling=yes.
> >>>>>>
> >>>>>> The other option is always set cross_compiling=yes for
> >> standalone
> >>>>>> build given all tests in test/mpi/configure.in seems to work
> in
> >>>>>> cross-compile mode....
> >>>>>>
> >>>>>> Let me know if this is acceptable or you have some other ideas
> ?
> >>>>>>
> >>>>>> PS. You may also want to set MPIEXEC to enable "make testing".
> >>>>>>
> >>>>>> A.Chan
> >>>>>>
> >>>>>> ----- "William Gropp" <wgropp(a)illinois.edu> wrote:
> >>>>>>
> >>>>>>> Anthony,
> >>>>>>>
> >>>>>>> For the IBM MPI that I'm running, if I select the IBM
> compilers
> >>>>> for
> >>>>>>> MPI programs, you can't run the resulting programs. But if
> you
> >>>>> use
> >>>>>>> xlc instead of mpcc, you can run programs (the TESTCC in the
> >> old
> >>>>>>> configure). Will there be any way to avoid selecting --cross
> >>> for
> >>>>>>> platforms where you can't run programs complied with the mpi
> >>>>>>> compilation scripts?
> >>>>>>>
> >>>>>>> Bill
> >>>>>>>
> >>>>>>> William Gropp
> >>>>>>> Deputy Director for Research
> >>>>>>> Institute for Advanced Computing Applications and
> Technologies
> >>>>>>> Paul and Cynthia Saylor Professor of Computer Science
> >>>>>>> University of Illinois Urbana-Champaign
> >>>>>
> >>>>> William Gropp
> >>>>> Deputy Director for Research
> >>>>> Institute for Advanced Computing Applications and Technologies
> >>>>> Paul and Cynthia Saylor Professor of Computer Science
> >>>>> University of Illinois Urbana-Champaign
> >>>
> >>> William Gropp
> >>> Deputy Director for Research
> >>> Institute for Advanced Computing Applications and Technologies
> >>> Paul and Cynthia Saylor Professor of Computer Science
> >>> University of Illinois Urbana-Champaign