Subject: Re: [OMPI users] Pb in configure script when using ifort with "-fast" + link of opal_wrapper
From: Gus Correa (gus_at_[hidden])
Date: 2009-06-03 12:53:13


Hi Michel, Jeff, Rainer, list

I have AMD Opteron Shanghai, and Intel 10.1017.
I had trouble with the Intel -fast flag also.

According to the ifort man page/help:
-fast = -xT -O3 -ipo -no-prec-div -static
(Each compiler vendor has a different -fast, PGI is another thing.)

Intel doesn't allow SSE-type optimization beyond W (SSE+SSE2)
for AMD processors (an old and contentious issue,
Google it form more info).
So, I changed -xT to -xW (the highest level allowed,
also recommended by AMD).

I had trouble with ipo before (missing symbols during link),
so I reduced it to ip.

Moreover, -static definitely cannot work with the Infiniband
and other tons of shared libraries, of course,
hence I simply removed it.
However, as suggested by Rainer,
-static-intel may be OK,
if all you want is to avoid sending the Intel LD_LIBRARY_PATH with your
mpiexec command.
(I haven't tried it, though.)

The flags became: -xW -O3 -ip -no-prec-div

I used the same flags for ifort (FFLAGS, FCFLAGS), icc (CFLAGS)
and icpc (CXXFLAGS),to build OpenMPI 1.3.2, and it works.
For "Genuine Intel" processors you can upgrade -xW to whatever is
appropriate.

My $0.02.

Gus Correa
---------------------------------------------------------------------
Gustavo Correa
Lamont-Doherty Earth Observatory - Columbia University
Palisades, NY, 10964-8000 - USA
---------------------------------------------------------------------

Jeff Squyres wrote:
> Rainer and I are still iterating on the trunk solution (we moved to an
> hg branch just for convenience for the moment).
>
> Note that the Fortran flags aren't too important to OMPI. We *only* use
> them in configure. OMPI doesn't contain any Fortran 77 code at all, and
> the F90 module is extremely minimalistic (generally one-line subroutines
> to call the C counterpart). So a workaround for the moment -- until we
> can figure out the problem -- might be to remove the -fast from the
> FFLAGS and FCFLAGS.
>
> On Jun 3, 2009, at 11:34 AM, Rainer Keller wrote:
>
>> Dear Michel,
>> per the naming convention test in configure:
>> ifort -fast
>> will turn on -xHOST -O3 -ipo -no-prec-div -static,
>> of which -ipo turns on interprocedural optimizations for multiple files.
>> Here the compiled object file does not contain the symbols searched
>> for in the
>> configure-tests.
>>
>> Looking into the simple test-case in configure and the options that
>> one has to
>> figure out the naming convention using compilation (-c), I don't see
>> an other
>> other than disabling -fast & -ipo for intel-fortan compilers.
>>
>> Please check trunk in commit r21363.
>>
>>
>> On Wednesday 03 June 2009 09:29:09 am DEVEL Michel wrote:
>> > In fact I forgot to put back to '-fast -C' the FCFLAGS variable (from
>> > '-O3 -C'). There is still an error (many opal_*_* subroutines not found
>> > during the ipo step) at the same place, coming from the fact that
>> > "ld: attempted static link of dynamic object
>> > `../../../opal/.libs/libopen-pal.so'
>> > although I put --enable-static in the configure step...
>>
>> > Any idea of how to make the static libraries ?
>>
>> In order to statically link at least the intel-libraries, please add
>> -static-intel (in previous intel compilers called -i-static)
>> to LDFLAGS
>>
>> With best regards,
>> Rainer
>> --
>> ------------------------------------------------------------------------
>> Rainer Keller, PhD Tel: +1 (865) 241-6293
>> Oak Ridge National Lab Fax: +1 (865) 241-4811
>> PO Box 2008 MS 6164 Email: keller_at_[hidden]
>> Oak Ridge, TN 37831-2008 AIM/Skype: rusraink
>>
>>
>> _______________________________________________
>> users mailing list
>> users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>
>