LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2003-08-29 13:14:53


On Fri, 29 Aug 2003, Ed Wesley Wells wrote:

> Environment:
> - Intel PII and PIII machines.
> - Fast Ethernet connections.
> - NPACI Rocks Linux (based on RedHat Linux 7.3) 2.3.2
> - kernel-2.4.21-openmosix1
> - glibc-2.2.5-43
> - LAM-MPI compiled with Intel icc/ifc 7.1 using a custom SPEC file and the
> SRPM from the lam-mpi.org website.
> - Configure string in the SPEC file:
> ./configure --with-rpi=usysv --with-rpi=tcp --with-cc=icc --with-cxx=icc
> --with-fc=ifc --with-tm=/opt/OpenPBS --prefix=/opt/lam-mpi/intel71

You actually don't need either of those --with-rpi lines. We have
--with-rpi=usysv in the default RPM (IIRC) just to ensure that it is the
default.

> 1.) What tools will help me determine that LAM-MPI actually compiled and
> linked to the correct libraries and compiler?

Probably the best way would be to look at the output from when you did
"rpmbuild --rebuild lam..." (or however you built the LAM RPM). You
should see every file in there compiled with the compilers that you chose.
However, given that you did --with-cc and --with-cxx, it would be
surprising (and something would be wrong) if it didn't use those.

Also, "mpicc -showme" will show the command that would be used to compile
an MPI program. You should see the C compiler in there that was used to
compile LAM (and will therefore be used to compile your MPI programs).

> I'm trying to debug a problem related to my application (custom
> Fortran90 code) causing a signal 11 and exiting during exection. I
> believe this happens before MPI_INIT is called, so I wish to make sure
> its not lam that's misbehaving, but the code or another library.

You might want to run a single instance of the program through a debugger
and see if that can tell you anything.

Also, ensure that everything "matches" -- you used the same fortran
compiler to compile LAM, your application (which, if you use mpif77, you
should be), and any other libraries that you're linking in.

> 2.) In the SPEC file (configure line listed above) I specify a
> "--prefix" but it still installs everything in "/", not
> "/opt/lam-mpi/intel71" as I specify. Why, and how could I fix this?

I believe that this is RPM spec file mojo here -- I think rpmbuild will
automatically put in its own prefix for the "%configure" macro. Hence,
there will be two "--prefix" options on the command line, and I believe
that autoconf will take the first one that it finds (or perhaps the last
-- can't remember offhand -- either way, it's getting the wrong one for
you).

You can have a look at LAM's SRPM for OSCAR to see how we overrode the
default prefix (LAM gets installed to /opt/lam-7.0). Look either in
OSCAR's CVS (http://sourceforge.net/cvs/?group_id=9368 -- the file is
oscar/packages/lam/SRPMS/lam-with-gm-oscar-7.0-2.src.rpm) or you can see
the spec file itself in LAM's CVS (do an anonymous checkout; see
http://www.lam-mpi.org/cvs/) in
trillium/contrib/dist/linux/lam-oscar.spec.

-- 
{+} Jeff Squyres
{+} jsquyres_at_[hidden]
{+} http://www.lam-mpi.org/