Re: [gmx-developers] warning Emulating FMA instructions - this is probably not what you want!

Berk Hess hess at kth.se
Wed Oct 17 16:46:54 CEST 2012


Hi,

Apparently icc can compile the code, so than it's not strange that you end up in this situation. But we should avoid this from happening.
SSE4.1 would be the next supported level, but you really want the vex instructions and not plain SSE, as the latter is much slower.
The best thing would be to use gcc, preferably 4.7.

Cheers,

Berk

----- Reply message -----
From: "Szilárd Páll" <szilard.pall at cbr.su.se>
To: "Discussion list for GROMACS development" <gmx-developers at gromacs.org>
Subject: [gmx-developers] warning Emulating FMA instructions - this is probably not what you want!
Date: Wed, Oct 17, 2012 15:25
Hi,
First of all, as far as I know, the new icc 13 can not generate AMD-compatible FMA4/XOP (v12 surely cant: http://developer.amd.com/Assets/CompilerOptQuickRef-62004200.pdf), so I find it strange that you've ended up with GMX_ACCELERATION=AVX_128_FMA using an Intel compiler -- unless you set the acceleration manually. To get FMA4 support you need to use a recent gcc version, the newer the better. The Verlet kernels don't benefit much from FMA4, so if you want to, you can use Intel Compiler, but then you need to set the acceleration to SSE2 (max SSE3 works, but we don't use these instructions).

On Wed, Oct 17, 2012 at 11:14 AM, Jochen Hub <jhub at gwdg.de> wrote:

Hi developers,



does anyone know how to interpret this icc warning:



[  8%] /home/jhub/src/gromacs/include/gmx_x86_avx_128_fma.h(88): warning #1224: #warning directive: Emulating FMA instructions - this is probably not what you want!



#warning Emulating FMA instructions - this is probably not what you want!

This warning is related to a bug in the build system, you'll need to add the -mfma4 flag to the compiler flags manually.

--Szilard 



I am compiling 46-release on a Interlagos 6378 with OpenMPI and icc 13.0.0 20120731. My cmake line is:



cmake $gmxsrc \

-DFFTW_LIBRARY=$FFTW_LOCATION/lib/libfftw3f.a \

-DFFTW3F_INCLUDE_DIR=$FFTW_LOCATION/include \

-DFFTW3F_LIBRARIES=$FFTW_LOCATION/lib/libfftw3f.a \

-DCMAKE_INSTALL_PREFIX=$(pwd) \

-DGMX_X11=OFF \

-DCMAKE_CXX_COMPILER=$MPICXX \

-DCMAKE_C_COMPILER=$MPICC \

-DGMX_MPI=ON \

-DGMX_PREFER_STATIC_LIBS=ON \

-DGMX_GPU=OFF



and cmake reported:



-- Performing Test GNU_AVX_CFLAG

-- Performing Test GNU_AVX_CFLAG - Success

-- Enabling 128-bit AVX Gromacs acceleration (with fused-multiply add), and it will help compiler optimization.



Thanks a lot,

Jochen







-- 

---------------------------------------------------

Dr. Jochen Hub

Computational Molecular Biophysics Group

Institute for Microbiology and Genetics

Georg-August-University of Göttingen

Justus-von-Liebig-Weg 11, 37077 Göttingen, Germany.

Phone: +49-551-39-14189

http://cmb.bio.uni-goettingen.de/

---------------------------------------------------

-- 

gmx-developers mailing list

gmx-developers at gromacs.org

http://lists.gromacs.org/mailman/listinfo/gmx-developers

Please don't post (un)subscribe requests to the list. Use the www interface or send it to gmx-developers-request at gromacs.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20121017/f301cedc/attachment.html>


More information about the gromacs.org_gmx-developers mailing list