-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrun_installlibs_cmake.sh
executable file
·43 lines (33 loc) · 1.66 KB
/
run_installlibs_cmake.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/bin/bash
rm -r CMakeCache.txt CMakeFiles cmake_install.cmake
KOKKOS_PATH=${HOME}/Kokkos/kokkos
KOKKOSKERNELS_PATH=${HOME}/Kokkos/kokkos-kernels
# KOKKOS_DEVICES="Cuda,OpenMP"
KOKKOS_DEVICES="OpenMP"
CXX=
KOKKOS_ARCH=
TPLS=
OPTIONS=
CUDA_OPTIONS=
if [[ "${KOKKOS_DEVICES}" == *Cuda* ]]; then
CXX=${KOKKOS_PATH}/bin/nvcc_wrapper
KOKKOS_ARCH="BDW,Volta70"
CUDA_OPTIONS="enable_lambda"
else
KOKKOS_ARCH="BDW"
CXX=g++
fi
EXERCISE_DIR=${PWD}
mkdir -p LibInstalls
KOKKOSKERNELS_INSTALL=${EXERCISE_DIR}/LibInstalls/kernels-install
cd LibInstalls
echo ${KOKKOSKERNELS_PATH}/cm_generate_makefile.bash --compiler=${CXX} --with-devices=${KOKKOS_DEVICES} --kokkos-path=${KOKKOS_PATH} --kokkoskernels-path=${KOKKOSKERNELS_PATH} --prefix=${KOKKOSKERNELS_INSTALL} --with-options=${OPTIONS} --with-cuda-options=${CUDA_OPTIONS} --arch=${KOKKOS_ARCH} --with-tpls=${TPLS} --kokkos-make-j=8 --disable-kokkos-tests --disable-tests --disable-examples
${KOKKOSKERNELS_PATH}/cm_generate_makefile.bash --compiler=${CXX} --with-devices=${KOKKOS_DEVICES} --kokkos-path=${KOKKOS_PATH} --kokkoskernels-path=${KOKKOSKERNELS_PATH} --prefix=${KOKKOSKERNELS_INSTALL} --with-options=${OPTIONS} --with-cuda-options=${CUDA_OPTIONS} --arch=${KOKKOS_ARCH} --with-tpls=${TPLS} --kokkos-make-j=8 --disable-kokkos-tests --disable-tests --disable-examples
make install -j8
cd ${EXERCISE_DIR}
echo "KERNELS_INSTALL_PATH = $KOKKOSKERNELS_INSTALL"
if [[ -d "${KOKKOSKERNELS_INSTALL}/lib64" ]]; then
cmake -DCMAKE_CXX_COMPILER=${CXX} -DKokkosKernels_DIR="${KOKKOSKERNELS_INSTALL}/lib64/cmake/KokkosKernels" .
else
cmake -DCMAKE_CXX_COMPILER=${CXX} -DKokkosKernels_DIR="${KOKKOSKERNELS_INSTALL}/lib/cmake/KokkosKernels" .
fi