Building LAM/MPI
LAM/MPI is a high-quality open-source implementation of the Message
Passing Interface specification, including all of MPI-1.2 and much of
MPI-2. Intended for production as well as research use, LAM/MPI
includes a rich set of features for system administrators, parallel
programmers, application users, and parallel computing researchers.
Steps to building
To build LAM, you will need to download the source, apply the patch
provided, and then build and test it. These steps, and any known
limitations, are described in the sections below.
Downloading LAM
You can obtain the LAM/MPI source files from the LAM/MPI website. We have built and
tested LAM/MPI 7.1.1.
Patching LAM/MPI 7.1.1
The LAM/MPI 7.1.1 configure script makes an assumption about compiler
outputs that is not true for Pathscale compilers. Because of
this, it generates an invalid configuration to create the LAM C++
shared library for use with the PathScale Compiler Suite.
Here is a basic patch to the LAM/MPI 7.1.1 configure script that should solve the build issue when using the --enable-shared --with-modules flags. This patch has been used with LAM/MPI 7.1.1 to configure LAM/MPI to work with the PathScale compilers. To install the patch, use this command :
Here is a basic patch to the LAM/MPI 7.1.1 configure script that should solve the build issue when using the --enable-shared --with-modules flags. This patch has been used with LAM/MPI 7.1.1 to configure LAM/MPI to work with the PathScale compilers. To install the patch, use this command :
patch configure configure.patchWhen the user specifies any linkflag containing an "=" sign such as "-mcmodel=medium", mpif77, or any other mpi* compiler wrapper, only "-mcmodel" is passed in the flags. This is not a PathScale-specific problem. Here is the patch that will fix this: To install the patch that will fix this, use this command :
patch configure configure2.patch
Building LAM/MPI
Set up your environment to work with the PathScale EKOPath compilers.
export FC=pathf95 export F77=pathf95 export CC=pathcc export CXX=pathCC export LAMRSH=sshNow configure and build LAM/MPI.
./configure --prefix=$LAM_HOME --enable-shared --with-modules make make install
Known limitations
There are no known limitations.
We recommend you record what steps you took, along with their output, in case of problems. You can include this in your email to support. Here is an example of changing a make command to record the output in a text file:
We recommend you record what steps you took, along with their output, in case of problems. You can include this in your email to support. Here is an example of changing a make command to record the output in a text file:
make foo 2>&1 | tee make-foo-log.txtIf you have any comments or suggestions about additions to these pages, please contact support@pathscale.com.