@@ -17,20 +17,23 @@ SRC=`dirname $0` # location of source directory
17
17
# and optimization flag
18
18
19
19
# Paths for required external libraries
20
- dealiiPetscRealDir=" /shared/dftfesoftwares2021 /dealii/installgcc9.2cudaawarempiWithPetscSlpec "
21
- dealiiPetscComplexDir=" /shared/dftfesoftwares2021 /dealii/installgcc9.2cudaawarempiWithPetscSlpecComplex "
22
- alglibDir=" /shared/dftfesoftwares2021 /alglib/cpp/src "
23
- libxcDir=" /shared/dftfesoftwares2021 /libxc/gcc9.2_libxc_5.1.5 "
24
- spglibDir=" /shared/dftfesoftwares2021 /spglib/gcc9.2_spglib "
20
+ dealiiPetscRealDir=" /storage/dftfeDependencies /dealii/installReal "
21
+ dealiiPetscComplexDir=" /storage/dftfeDependencies /dealii/installComplex "
22
+ alglibDir=" /storage/dftfeDependencies /alglib/install "
23
+ libxcDir=" /storage/dftfeDependencies /libxc/install "
24
+ spglibDir=" /storage/dftfeDependencies /spglib/install "
25
25
xmlIncludeDir=" /usr/include/libxml2"
26
- xmlLibDir=" /usr/lib64"
27
- ELPA_PATH=" /shared/dftfesoftwares2021/elpa2022/installgcc9.2elpa2022withcudaawarempi"
28
- numdiffdir=" /shared/dftfesoftwares2021/numdiff/build"
26
+ xmlLibDir=" /usr/lib/x86_64-linux-gnu"
27
+ ELPA_PATH=" /storage/dftfeDependencies/elpa/install"
28
+ dftdpath=" /storage/dftfeDependencies/dftd/install"
29
+ numdiffdir=" /storage/dftfeDependencies/numdiff/install"
30
+
29
31
30
32
# Paths for optional external libraries
31
33
# path for NCCL/RCCL libraries
32
- DCCL_PATH=" "
34
+ DCCL_PATH=" /apps/softwares/spack/opt/spack/linux-ubuntu24.04-cascadelake/gcc-13.3.0/nccl-2.23.4-1-xyspmp23glxb4slgne4xpemahjrkuyrj "
33
35
mdiPath=" "
36
+ torchDir=" "
34
37
35
38
# Toggle GPU compilation
36
39
withGPU=ON
@@ -45,13 +48,13 @@ withGPUAwareMPI=OFF #Please use this option with care
45
48
withDCCL=OFF
46
49
withMDI=OFF
47
50
withTorch=OFF
48
- withCustomizedDealii=ON
51
+ withCustomizedDealii=OFF
49
52
50
53
# Compiler options and flags
51
- cxx_compiler=mpic++ # sets DCMAKE_CXX_COMPILER
52
- cxx_flags=" -march=native -fPIC" # sets DCMAKE_CXX_FLAGS
54
+ cxx_compiler=mpicxx # sets DCMAKE_CXX_COMPILER
55
+ cxx_flags=" -std=c++17 - march=native -fopenmp -fPIC" # sets DCMAKE_CXX_FLAGS
53
56
cxx_flagsRelease=" -O2" # sets DCMAKE_CXX_FLAGS_RELEASE
54
- device_flags=" -arch=sm_70" # set DCMAKE_CXX_CUDA_FLAGS
57
+ device_flags=" -arch=sm_70 -ccbin=mpicxx " # set DCMAKE_CXX_CUDA_FLAGS
55
58
# (only applicable for withGPU=ON)
56
59
device_architectures=" 70" # set DCMAKE_CXX_CUDA_ARCHITECTURES
57
60
# (only applicable for withGPU=ON)
@@ -79,47 +82,47 @@ out=`echo "$build_type" | tr '[:upper:]' '[:lower:]'`
79
82
80
83
function cmake_configure() {
81
84
if [ " $gpuLang " = " cuda" ]; then
82
- cmake -DCMAKE_CXX_STANDARD=14 -DCMAKE_CXX_COMPILER=$cxx_compiler \
85
+ cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=TRUE - DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_COMPILER=$cxx_compiler \
83
86
-DCMAKE_CXX_FLAGS=" $cxx_flags " \
84
87
-DCMAKE_CXX_FLAGS_RELEASE=" $cxx_flagsRelease " \
85
88
-DCMAKE_BUILD_TYPE=$build_type -DDEAL_II_DIR=$dealiiDir \
86
89
-DALGLIB_DIR=$alglibDir -DLIBXC_DIR=$libxcDir \
87
90
-DSPGLIB_DIR=$spglibDir -DXML_LIB_DIR=$xmlLibDir \
88
91
-DXML_INCLUDE_DIR=$xmlIncludeDir \
89
- -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch \
92
+ -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch -DTORCH_DIR= $torchDir \
90
93
-DWITH_CUSTOMIZED_DEALII=$withCustomizedDealii \
91
- -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$numdiffdir " \
94
+ -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$dftdpath ; $ numdiffdir" \
92
95
-DWITH_COMPLEX=$withComplex -DWITH_GPU=$withGPU -DGPU_LANG=$gpuLang -DGPU_VENDOR=$gpuVendor -DWITH_GPU_AWARE_MPI=$withGPUAwareMPI -DCMAKE_CUDA_FLAGS=" $device_flags " -DCMAKE_CUDA_ARCHITECTURES=" $device_architectures " \
93
96
-DWITH_TESTING=$testing -DMINIMAL_COMPILE=$minimal_compile \
94
- -DHIGHERQUAD_PSP=$withHigherQuadPSP $1
97
+ -DHIGHERQUAD_PSP=$withHigherQuadPSP -DBUILD_SHARED_LIBS=ON $1
95
98
elif [ " $gpuLang " = " hip" ]; then
96
- cmake -DCMAKE_CXX_STANDARD=14 -DCMAKE_CXX_COMPILER=$cxx_compiler \
99
+ cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=TRUE - DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_COMPILER=$cxx_compiler \
97
100
-DCMAKE_CXX_FLAGS=" $cxx_flags " \
98
101
-DCMAKE_CXX_FLAGS_RELEASE=" $cxx_flagsRelease " \
99
102
-DCMAKE_BUILD_TYPE=$build_type -DDEAL_II_DIR=$dealiiDir \
100
103
-DALGLIB_DIR=$alglibDir -DLIBXC_DIR=$libxcDir \
101
104
-DSPGLIB_DIR=$spglibDir -DXML_LIB_DIR=$xmlLibDir \
102
105
-DXML_INCLUDE_DIR=$xmlIncludeDir \
103
- -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch \
106
+ -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch -DTORCH_DIR= $torchDir \
104
107
-DWITH_CUSTOMIZED_DEALII=$withCustomizedDealii \
105
- -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$numdiffdir " \
108
+ -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$dftdpath ; $ numdiffdir" \
106
109
-DWITH_COMPLEX=$withComplex -DWITH_GPU=$withGPU -DGPU_LANG=$gpuLang -DGPU_VENDOR=$gpuVendor -DWITH_GPU_AWARE_MPI=$withGPUAwareMPI -DCMAKE_HIP_FLAGS=" $device_flags " -DCMAKE_HIP_ARCHITECTURES=" $device_architectures " \
107
110
-DWITH_TESTING=$testing -DMINIMAL_COMPILE=$minimal_compile \
108
- -DHIGHERQUAD_PSP=$withHigherQuadPSP $1
111
+ -DHIGHERQUAD_PSP=$withHigherQuadPSP -DBUILD_SHARED_LIBS=ON $1
109
112
else
110
- cmake -DCMAKE_CXX_STANDARD=14 -DCMAKE_CXX_COMPILER=$cxx_compiler \
113
+ cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=TRUE - DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_COMPILER=$cxx_compiler \
111
114
-DCMAKE_CXX_FLAGS=" $cxx_flags " \
112
115
-DCMAKE_CXX_FLAGS_RELEASE=" $cxx_flagsRelease " \
113
116
-DCMAKE_BUILD_TYPE=$build_type -DDEAL_II_DIR=$dealiiDir \
114
117
-DALGLIB_DIR=$alglibDir -DLIBXC_DIR=$libxcDir \
115
118
-DSPGLIB_DIR=$spglibDir -DXML_LIB_DIR=$xmlLibDir \
116
119
-DXML_INCLUDE_DIR=$xmlIncludeDir \
117
- -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch \
120
+ -DWITH_MDI=$withMDI -DMDI_PATH=$mdiPath -DWITH_TORCH=$withTorch -DTORCH_DIR= $torchDir \
118
121
-DWITH_CUSTOMIZED_DEALII=$withCustomizedDealii \
119
- -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$numdiffdir " \
122
+ -DWITH_DCCL=$withDCCL -DCMAKE_PREFIX_PATH=" $ELPA_PATH ;$DCCL_PATH ;$dftdpath ; $ numdiffdir" \
120
123
-DWITH_COMPLEX=$withComplex \
121
124
-DWITH_TESTING=$testing -DMINIMAL_COMPILE=$minimal_compile \
122
- -DHIGHERQUAD_PSP=$withHigherQuadPSP $1
125
+ -DHIGHERQUAD_PSP=$withHigherQuadPSP -DBUILD_SHARED_LIBS=ON $1
123
126
fi
124
127
}
125
128
0 commit comments