__AVX__ problem

230 views
Skip to first unread message

Victor Eijkhout

unread,
Jul 18, 2018, 2:22:59 AM7/18/18
to deal.II User Group
If I read the log and the cmake log correctly, an __AVX__ flag is missing. But I'm supplying a whole slew of AVX flags....

Please see the attached.

Victor.

CMakeError.log
deal-9_intel18_impi_18_0.log

Daniel Arndt

unread,
Jul 18, 2018, 3:19:54 AM7/18/18
to deal.II User Group
Victor,

the problem that is responsible for the failing build process is a different one:
Performing C++ SOURCE FILE Test DEAL_II_HAVE_USABLE_FLAGS_DEBUG failed with the following output:
Change Dir: /tmp/dealii-build/CMakeFiles/CMakeTmp

Run Build Command:"/usr/bin/gmake" "cmTC_9c70f/fast"
/usr/bin/gmake -f CMakeFiles/cmTC_9c70f.dir/build.make CMakeFiles/cmTC_9c70f.dir/build
gmake[1]: Entering directory `/tmp/dealii-build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_9c70f.dir/src.cxx.o
/opt/intel/compilers_and_libraries_2018.2.199/linux/bin/intel64/icpc    -DDEAL_II_HAVE_USABLE_FLAGS_DEBUG -fpic -ansi -w2 -diag-disable=remark -wd21 -wd68 -wd135 -wd175 -wd177 -wd191 -wd193 -wd279 -wd327 -wd383 -wd981 -wd1418 -wd1478 -wd1572 -wd2259 -wd2536 -wd3415 -wd15531 -wd111 -wd128 -wd185 -wd186 -wd280 -qopenmp-simd -std=c++14 -O0 -g -gdwarf-2 -grecord-gcc-switches -std=c++14 -g -xCORE-AVX2 -axMIC-AVX512,CORE-AVX512 -I/opt/intel/compilers_and_libraries_2018.2.199/linux/tbb/include -O0   -o CMakeFiles/cmTC_9c70f.dir/src.cxx.o -c /tmp/dealii-build/CMakeFiles/CMakeTmp/src.cxx
gmake[1]: *** No rule to make target `/home1/apps/intel18/superlu_seq/5.2.1/lib/libsuperlu.a', needed by `cmTC_9c70f'.  Stop.
gmake[1]: Leaving directory `/tmp/dealii-build/CMakeFiles/CMakeTmp'
gmake: *** [cmTC_9c70f/fast] Error 2

Source file was:
int main(){ return 0; }

There seems to be some problems with your superlu build.

Your AVX problem appears to be related to https://github.com/dealii/dealii/pull/4440
Can you try to compile with -march=native -xhost or  -xavx?
What is the output of
$ icc -dM -E -x c /dev/null
for these compiler flags?

Best,
Daniel

Martin Kronbichler

unread,
Jul 18, 2018, 4:25:49 AM7/18/18
to dea...@googlegroups.com

Dear Victor,

The file CMakeError.txt indicates that no flags are present at the stage the respective test is ran:

/opt/intel/compilers_and_libraries_2018.2.199/linux/bin/intel64/icpc    -DDEAL_II_HAVE_AVX   -o CMakeFiles/cmTC_ffc3b.dir/src.cxx.o -c /tmp/dealii-build/CMakeFiles/CMakeTmp/src.cxx

Note that no additional flags are given. This is how it looks on my machine (with gcc):

/opt/openmpi/1.8.8/gcc/bin/mpicxx    -DDEAL_II_HAVE_AVX -march=native   -o CMakeFiles/cmTC_7125b.dir/src.cxx.o -c /home/kronbichler/sw/build_deal/CMakeFiles/CMakeTmp/src.cxx

Note that it adds '-march=native'. I see in your script that you add the flags "-std=c++14 -g -xCORE-AVX2 -axMIC-AVX512,CORE-AVX512 -I/opt/intel/compilers_and_libraries_2018.2.199/linux/tbb/include -O2" individually to both DEAL_II_CXX_FLAGS_DEBUG and DEAL_II_CXX_FLAGS_RELEASE. What happens is that our configuration system only adds the generic flags to the respective tests, i.e., you should put the generic flags to CMAKE_CXX_FLAGS. You can additionally specify what you want to have for the release or debug flags, but the machine-specific flags are, at least as far as I remember the build system, only passed on from the generic compiler flags. Here is an example from what I set to get the above line:

cmake ...     -D CMAKE_CXX_FLAGS="-march=native"    -D CMAKE_C_FLAGS="-march=native"  -D DEAL_II_CXX_FLAGS_RELEASE="-O3"  ...

I hope this helps.

Best,
Martin

--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to the Google Groups "deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dealii+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply all
Reply to author
Forward
0 new messages