LAM/MPI logo

LAM/MPI General User's Mailing List Archives

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

From: Brian Barrett (brbarret_at_[hidden])
Date: 2006-02-28 20:58:15


On Feb 28, 2006, at 3:54 PM, Robert LeBlanc wrote:

> Ok, so made some progress. I was running 7.1.2b23 and upgraded to
> 7.1.2b32
> and now I only get the following messages:

<snip>

> I am using the following flags for C, C++ and Fortran when
> compiling LAM,
> would any of these cause the above problem?
>
> '-O3 -tpp7 -cpu=pentium4 -xN -ip -parallel'

I asked Robert for some more information off the list and finally
figured out what is going on. Intel's compilers implicitly add -
lpthread if you give the -parallel option. The -parallel option
enables auto-parallelization of loops and such. The LAM tests to
figure out how to enable threads determined that no special flags
were needed (since the -parallel option had included them for us).
The build system doesn't copy most user CFLAGS/CXXFLAGS/FFLAGS/etc to
the wrapper compilers, to -parallel was dropped. When the user code
was compiled, the wrapper added neither -lpthread nor -parallel, and
the missing symbol error occurred.

Now, I didn't catch it before, but compiling LAM/MPI with the -
parallel option is probably a really bad idea. It's not going to do
much in terms of optimization, and has high potential to do some
seriously bad things in parts of the code (particularly our shared
memory device - I'm not sure the compiler can understand what is
going on there). I'm not sure what the -xN flag does, but I would
drop the -ip and -parallel options. It won't make LAM/MPI any
slower, and will solve your linking issues.

Brian

-- 
   Brian Barrett
   LAM/MPI developer and all around nice guy
   Have a LAM/MPI day: http://www.lam-mpi.org/