Merge pull request #623 from ye-luo/fix-FindMKL

Fix FindMKL
This commit is contained in:
Paul R. C. Kent 2018-01-04 09:28:15 -05:00 committed by GitHub
commit 9f4c5f5877
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 86 additions and 3 deletions

View File

@ -7,21 +7,21 @@ FILE( WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl.cxx"
"#include <iostream>\n #include <mkl.h>\n int main() { return 0; }\n" )
try_compile(HAVE_MKL ${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl.cxx
CMAKE_FLAGS "${CMAKE_CXX_FLAGS} -mkl" )
COMPILE_DEFINITIONS "-mkl" )
# Check for mkl_vml_functions.h
FILE( WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl_vml.cxx"
"#include <iostream>\n #include <mkl_vml_functions.h>\n int main() { return 0; }\n" )
try_compile(HAVE_MKL_VML ${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl_vml.cxx
CMAKE_FLAGS "${CMAKE_CXX_FLAGS} -mkl" )
COMPILE_DEFINITIONS "-mkl" )
# Check for fftw3
FILE( WRITE "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl_fftw3.cxx"
"#include <iostream>\n #include <fftw/fftw3.h>\n int main() { return 0; }\n" )
try_compile(HAVE_MKL_FFTW3 ${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/src_mkl_fftw3.cxx
CMAKE_FLAGS "${CMAKE_CXX_FLAGS} -mkl" )
COMPILE_DEFINITIONS "-mkl" )
IF ( HAVE_MKL )
SET( MKL_FOUND 1 )

38
config/build_alcf_mira.sh Normal file
View File

@ -0,0 +1,38 @@
#!/bin/bash
Compiler=Clang++11
for name in real_SoA real_SoA_MP cplx_SoA cplx_SoA_MP \
real real_MP cplx cplx_MP
do
CMAKE_FLAGS="-D CMAKE_TOOLCHAIN_FILE=../config/BGQ_${Compiler}_ToolChain.cmake"
if [[ $name == *"cplx"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D QMC_COMPLEX=1"
fi
if [[ $name == *"_SoA"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D ENABLE_SOA=1"
fi
if [[ $name == *"_MP"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D QMC_MIXED_PRECISION=1"
fi
folder=build_${Compiler}_${name}
echo "**********************************"
echo "$folder"
echo "$CMAKE_FLAGS"
echo "**********************************"
mkdir $folder
cd $folder
if [ ! -f CMakeCache.txt ] ; then
cmake $CMAKE_FLAGS ..
cmake $CMAKE_FLAGS ..
fi
make -j24
cd ..
echo
done

View File

@ -0,0 +1,45 @@
module unload cray-libsci
module load cray-hdf5-parallel
export CC=cc
export CXX=CC
export BOOST_ROOT=/soft/libraries/boost/1.64.0/intel
export CRAYPE_LINK_TYPE=dynamic
#TYPE=RelWithDebInfo
TYPE=Release
Compiler=Intel
for name in real_SoA real_SoA_MP cplx_SoA cplx_SoA_MP \
real real_MP cplx cplx_MP
do
CMAKE_FLAGS="-D CMAKE_BUILD_TYPE=$TYPE"
if [[ $name == *"cplx"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D QMC_COMPLEX=1"
fi
if [[ $name == *"_SoA"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D ENABLE_SOA=1"
fi
if [[ $name == *"_MP"* ]]; then
CMAKE_FLAGS="$CMAKE_FLAGS -D QMC_MIXED_PRECISION=1"
fi
folder=build_KNL_${Compiler}_${name}
echo "**********************************"
echo "$folder"
echo "$CMAKE_FLAGS"
echo "**********************************"
mkdir $folder
cd $folder
if [ ! -f CMakeCache.txt ] ; then
cmake $CMAKE_FLAGS ..
fi
make -j32
cd ..
echo
done