Skip to content

Commit 97c41ec

Browse files
authored
Merge branch 'develop' into feature/burmark1/parted
2 parents ad7df42 + 27317a8 commit 97c41ec

54 files changed

Lines changed: 2529 additions & 760 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitlab/custom-jobs-and-variables.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ variables:
2929
# Optimization notes: We have 4 jobs lasting at max 5 minutes and using 28
3030
# cores out of 112 available (see -j in scripts/gitlab/build_and_test.sh).
3131
# We allow allocation overlapping.
32-
POODLE_SHARED_ALLOC: "--exclusive --partition=pdebug --time=12 --nodes=1"
32+
POODLE_SHARED_ALLOC: "--exclusive --partition=pdebug --time=14 --nodes=1"
3333
# Arguments for job level allocation
34-
POODLE_JOB_ALLOC: "--overlap --time=10 --nodes=1"
34+
POODLE_JOB_ALLOC: "--overlap --time=12 --nodes=1"
3535
# Project specific variants for poodle
3636
PROJECT_POODLE_VARIANTS: "~shared +openmp"
3737
# Project specific deps for poodle

Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,12 +111,12 @@ RUN . /opt/spack/share/spack/setup-env.sh && \
111111
## make -j 6 && \
112112
## cd .. && rm -rf build
113113

114-
FROM ghcr.io/rse-ops/intel-ubuntu-22.04:intel-2022.1.0 AS sycl
114+
FROM ghcr.io/rse-ops/intel-ubuntu-23.04:intel-2023.2.1 AS sycl
115115
ENV GTEST_COLOR=1
116116
COPY . /home/raja/workspace
117117
WORKDIR /home/raja/workspace/build
118118
RUN /bin/bash -c "source /opt/view/setvars.sh && \
119-
cmake -DCMAKE_CXX_COMPILER=dpcpp -DRAJA_ENABLE_SYCL=On -DENABLE_OPENMP=Off -DENABLE_ALL_WARNINGS=Off -DBLT_CXX_STD=c++17 .. && \
119+
cmake -DCMAKE_CXX_COMPILER=dpcpp -DENABLE_SYCL=On -DENABLE_OPENMP=Off -DENABLE_ALL_WARNINGS=Off -DBLT_CXX_STD=c++17 .. && \
120120
make -j 6 &&\
121121
./bin/raja-perf.exe --checkrun 5 -sp" && \
122122
cd .. && rm -rf build

scripts/lc-builds/blueos_clang_omptarget.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ if [[ $# -lt 1 ]]; then
1111
echo
1212
echo "You must pass a compiler version number to script. For example,"
1313
echo " blueos_clang_omptarget.sh 10.0.1-gcc-8.3.1"
14-
echo " - or - "
14+
echo " - or -"
1515
echo " blueos_clang_omptarget.sh ibm-10.0.1-gcc-8.3.1"
1616
exit
1717
fi

scripts/lc-builds/corona_sycl.sh

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
#!/usr/bin/env bash
2+
3+
###############################################################################
4+
# Copyright (c) 2017-23, Lawrence Livermore National Security, LLC
5+
# and RAJA project contributors. See the RAJAPerf/LICENSE file for details.
6+
#
7+
# SPDX-License-Identifier: (BSD-3-Clause)
8+
###############################################################################
9+
10+
if [[ $# -lt 1 ]]; then
11+
echo
12+
echo "You must pass 1 argument to the script (in this order): "
13+
echo " 1) SYCL compiler installation path"
14+
echo
15+
echo "For example: "
16+
echo " corona_sycl.sh /usr/workspace/raja-dev/clang_sycl_hip_gcc10.2.1_rocm5.1.0/install"
17+
exit
18+
fi
19+
20+
SYCL_PATH=$1
21+
shift 1
22+
23+
BUILD_SUFFIX=corona-sycl
24+
: ${BUILD_TYPE:=RelWithDebInfo}
25+
RAJA_HOSTCONFIG=../tpl/RAJA/host-configs/lc-builds/toss4/corona_sycl.cmake
26+
27+
echo
28+
echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it"
29+
echo "Configuration extra arguments:"
30+
echo " $@"
31+
echo
32+
33+
rm -rf build_${BUILD_SUFFIX}_${USER} >/dev/null
34+
mkdir build_${BUILD_SUFFIX}_${USER} && cd build_${BUILD_SUFFIX}_${USER}
35+
36+
DATE=$(printf '%(%Y-%m-%d)T\n' -1)
37+
38+
export PATH=${SYCL_PATH}/bin:$PATH
39+
40+
## NOTE: RAJA tests are turned off due to compilation issues.
41+
42+
cmake \
43+
-DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
44+
-DSYCL_LIB_PATH:STRING="${SYCL_PATH}/lib" \
45+
-C ${RAJA_HOSTCONFIG} \
46+
-DENABLE_OPENMP=Off \
47+
-DENABLE_CUDA=Off \
48+
-DRAJA_ENABLE_TARGET_OPENMP=Off \
49+
-DENABLE_ALL_WARNINGS=Off \
50+
-DENABLE_SYCL=On \
51+
-DCMAKE_C_COMPILER=clang \
52+
-DCMAKE_CXX_COMPILER=clang++ \
53+
-DCMAKE_LINKER=clang++ \
54+
-DCMAKE_CXX_STANDARD=17 \
55+
-DENABLE_TESTS=Off \
56+
-DENABLE_EXAMPLES=On \
57+
"$@" \
58+
..
59+
60+
echo
61+
echo "***********************************************************************"
62+
echo
63+
echo "Remember to export PATH=${SYCL_PATH}/bin:\$PATH to obtain the correct compiler paths."
64+
echo
65+
echo "cd into directory build_${BUILD_SUFFIX}_${USER} and run make to build RAJA"
66+
echo
67+
echo "***********************************************************************"

scripts/lc-builds/toss4_amdclang.sh

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env bash
22

33
###############################################################################
4-
# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC
4+
# Copyright (c) 2017-23, Lawrence Livermore National Security, LLC
55
# and RAJA project contributors. See the RAJAPerf/LICENSE file for details.
66
#
77
# SPDX-License-Identifier: (BSD-3-Clause)
@@ -15,7 +15,7 @@ if [[ $# -lt 2 ]]; then
1515
echo " 3...) optional arguments to cmake"
1616
echo
1717
echo "For example: "
18-
echo " toss4_amdclang.sh 5.1.0 gfx906"
18+
echo " toss4_amdclang.sh 5.7.0 gfx906"
1919
exit
2020
fi
2121

@@ -44,6 +44,12 @@ echo "Creating build directory ${BUILD_SUFFIX} and generating configuration in i
4444
echo "Configuration extra arguments:"
4545
echo " $@"
4646
echo
47+
echo "To get cmake to work you may have to configure with"
48+
echo " -DHIP_PLATFORM=amd"
49+
echo
50+
echo "To use fp64 HW atomics you must configure with these options when using gfx90a and hip >= 5.2"
51+
echo " -DCMAKE_CXX_FLAGS=\"-munsafe-fp-atomics\""
52+
echo
4753

4854
rm -rf build_${BUILD_SUFFIX} >/dev/null
4955
mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX}
@@ -53,23 +59,28 @@ module load cmake/3.23.1
5359

5460
# unload rocm to avoid configuration problems where the loaded rocm and COMP_VER
5561
# are inconsistent causing the rocprim from the module to be used unexpectedly
56-
module unload rocm
62+
# module unload rocm
5763

64+
if [[ ${COMP_VER} =~ .*magic.* ]]; then
65+
ROCM_PATH="/usr/tce/packages/rocmcc/rocmcc-${COMP_VER}"
66+
else
67+
ROCM_PATH="/usr/tce/packages/rocmcc-tce/rocmcc-${COMP_VER}"
68+
fi
5869

5970
cmake \
6071
-DCMAKE_BUILD_TYPE=Release \
61-
-DROCM_ROOT_DIR="/opt/rocm-${COMP_VER}" \
62-
-DHIP_ROOT_DIR="/opt/rocm-${COMP_VER}/hip" \
63-
-DHIP_PATH=/opt/rocm-${COMP_VER}/llvm/bin \
64-
-DCMAKE_C_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/amdclang \
65-
-DCMAKE_CXX_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/amdclang++ \
72+
-DROCM_ROOT_DIR="${ROCM_PATH}" \
73+
-DHIP_ROOT_DIR="${ROCM_PATH}/hip" \
74+
-DHIP_PATH=${ROCM_PATH}/llvm/bin \
75+
-DCMAKE_C_COMPILER=${ROCM_PATH}/llvm/bin/amdclang \
76+
-DCMAKE_CXX_COMPILER=${ROCM_PATH}/llvm/bin/amdclang++ \
6677
-DCMAKE_HIP_ARCHITECTURES="${COMP_ARCH}" \
6778
-DGPU_TARGETS="${COMP_ARCH}" \
6879
-DAMDGPU_TARGETS="${COMP_ARCH}" \
6980
-DBLT_CXX_STD=c++14 \
7081
-C ${RAJA_HOSTCONFIG} \
7182
-DENABLE_HIP=ON \
72-
-DENABLE_OPENMP=OFF \
83+
-DENABLE_OPENMP=ON \
7384
-DENABLE_CUDA=OFF \
7485
-DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \
7586
"$@" \
@@ -78,7 +89,7 @@ cmake \
7889
echo
7990
echo "***********************************************************************"
8091
echo
81-
echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJA"
92+
echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJAPerf"
8293
echo
8394
echo " Please note that you have to have a consistent build environment"
8495
echo " when you make RAJA as cmake may reconfigure; unload the rocm module"
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
#!/usr/bin/env bash
2+
3+
###############################################################################
4+
# Copyright (c) 2017-23, Lawrence Livermore National Security, LLC
5+
# and RAJA project contributors. See the RAJAPerf/LICENSE file for details.
6+
#
7+
# SPDX-License-Identifier: (BSD-3-Clause)
8+
###############################################################################
9+
10+
if [[ $# -lt 2 ]]; then
11+
echo
12+
echo "You must pass 2 or more arguments to the script (in this order): "
13+
echo " 1) compiler version number"
14+
echo " 2) HIP compute architecture"
15+
echo " 3...) optional arguments to cmake"
16+
echo
17+
echo "For example: "
18+
echo " toss4_amdclang_asan.sh 5.7.0 gfx90a"
19+
exit
20+
fi
21+
22+
COMP_VER=$1
23+
COMP_ARCH=$2
24+
shift 2
25+
26+
HOSTCONFIG="hip_3_X"
27+
28+
if [[ ${COMP_VER} == 4.* ]]
29+
then
30+
##HIP_CLANG_FLAGS="-mllvm -amdgpu-fixed-function-abi=1"
31+
HOSTCONFIG="hip_4_link_X"
32+
elif [[ ${COMP_VER} == 3.* ]]
33+
then
34+
HOSTCONFIG="hip_3_X"
35+
else
36+
echo "Unknown hip version, using ${HOSTCONFIG} host-config"
37+
fi
38+
39+
BUILD_SUFFIX=lc_toss4-amdclang-${COMP_VER}-${COMP_ARCH}-asan
40+
RAJA_HOSTCONFIG=../tpl/RAJA/host-configs/lc-builds/toss4/${HOSTCONFIG}.cmake
41+
42+
echo
43+
echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it"
44+
echo "Configuration extra arguments:"
45+
echo " $@"
46+
echo
47+
echo "To get cmake to work you may have to configure with"
48+
echo " -DHIP_PLATFORM=amd"
49+
echo
50+
echo "To use fp64 HW atomics you must configure with these options when using gfx90a and hip >= 5.2"
51+
echo " -DCMAKE_CXX_FLAGS=\"-munsafe-fp-atomics\""
52+
echo
53+
54+
rm -rf build_${BUILD_SUFFIX} >/dev/null
55+
mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX}
56+
57+
58+
module load cmake/3.23.1
59+
60+
# unload rocm to avoid configuration problems where the loaded rocm and COMP_VER
61+
# are inconsistent causing the rocprim from the module to be used unexpectedly
62+
# module unload rocm
63+
64+
if [[ ${COMP_VER} =~ .*magic.* ]]; then
65+
ROCM_PATH="/usr/tce/packages/rocmcc/rocmcc-${COMP_VER}"
66+
else
67+
ROCM_PATH="/usr/tce/packages/rocmcc-tce/rocmcc-${COMP_VER}"
68+
fi
69+
70+
cmake \
71+
-DCMAKE_BUILD_TYPE=Release \
72+
-DROCM_ROOT_DIR="${ROCM_PATH}" \
73+
-DHIP_ROOT_DIR="${ROCM_PATH}/hip" \
74+
-DHIP_PATH=${ROCM_PATH}/llvm/bin \
75+
-DCMAKE_C_COMPILER=${ROCM_PATH}/llvm/bin/amdclang \
76+
-DCMAKE_CXX_COMPILER=${ROCM_PATH}/llvm/bin/amdclang++ \
77+
-DCMAKE_HIP_ARCHITECTURES="${COMP_ARCH}:xnack+" \
78+
-DGPU_TARGETS="${COMP_ARCH}:xnack+" \
79+
-DAMDGPU_TARGETS="${COMP_ARCH}:xnack+" \
80+
-DCMAKE_C_FLAGS="-fsanitize=address -shared-libsan" \
81+
-DCMAKE_CXX_FLAGS="-fsanitize=address -shared-libsan" \
82+
-DBLT_CXX_STD=c++14 \
83+
-C ${RAJA_HOSTCONFIG} \
84+
-DENABLE_HIP=ON \
85+
-DENABLE_OPENMP=ON \
86+
-DENABLE_CUDA=OFF \
87+
-DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \
88+
"$@" \
89+
..
90+
91+
echo
92+
echo "***********************************************************************"
93+
echo
94+
echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJAPerf"
95+
echo
96+
echo " Please note that you have to have a consistent build environment"
97+
echo " when you make RAJA as cmake may reconfigure; load the appropriate"
98+
echo " rocm and rocmcc modules (${COMP_VER}) when building."
99+
echo
100+
echo " module load rocm/COMP_VER rocmcc/COMP_VER"
101+
echo " srun -n1 make"
102+
echo
103+
echo " Run with these environment options when using asan"
104+
echo " ASAN_OPTIONS=print_suppressions=0:detect_leaks=0"
105+
echo " HSA_XNACK=1"
106+
echo
107+
echo "***********************************************************************"

scripts/lc-builds/toss4_cce_hip.sh

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
#!/usr/bin/env bash
2+
3+
###############################################################################
4+
# Copyright (c) 2017-23, Lawrence Livermore National Security, LLC
5+
# and RAJA project contributors. See the RAJAPerf/LICENSE file for details.
6+
#
7+
# SPDX-License-Identifier: (BSD-3-Clause)
8+
###############################################################################
9+
10+
if [[ $# -lt 3 ]]; then
11+
echo
12+
echo "You must pass 3 or more arguments to the script (in this order): "
13+
echo " 1) compiler version number"
14+
echo " 2) HIP version"
15+
echo " 3) HIP compute architecture"
16+
echo " 4...) optional arguments to cmake"
17+
echo
18+
echo "For example: "
19+
echo " toss4_cce_hip.sh 14.0.3 5.2.3 gfx90a"
20+
exit
21+
fi
22+
23+
COMP_VER=$1
24+
HIP_VER=$2
25+
HIP_ARCH=$3
26+
shift 3
27+
28+
HOSTCONFIG="hip_3_X"
29+
30+
BUILD_SUFFIX=lc_toss4-cce-${COMP_VER}-hip-${HIP_VER}-${HIP_ARCH}
31+
RAJA_HOSTCONFIG=../tpl/RAJA/host-configs/lc-builds/toss4/${HOSTCONFIG}.cmake
32+
33+
echo
34+
echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it"
35+
echo "Configuration extra arguments:"
36+
echo " $@"
37+
echo
38+
echo "To use fp64 HW atomics you must configure with these options when using gfx90a and hip >= 5.2"
39+
echo " -DCMAKE_CXX_FLAGS=\"-munsafe-fp-atomics\""
40+
echo
41+
42+
rm -rf build_${BUILD_SUFFIX} >/dev/null
43+
mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX}
44+
45+
46+
module load cmake/3.24.2
47+
48+
cmake \
49+
-DCMAKE_BUILD_TYPE=Release \
50+
-DCMAKE_C_COMPILER="/usr/tce/packages/cce-tce/cce-${COMP_VER}/bin/craycc" \
51+
-DCMAKE_CXX_COMPILER="/usr/tce/packages/cce-tce/cce-${COMP_VER}/bin/crayCC" \
52+
-DHIP_PATH=/opt/rocm-${HIP_VER}/hip \
53+
-DCMAKE_HIP_ARCHITECTURES=${HIP_ARCH} \
54+
-DGPU_TARGETS=${HIP_ARCH} \
55+
-DAMDGPU_TARGETS=${HIP_ARCH} \
56+
-DBLT_CXX_STD=c++14 \
57+
-C ${RAJA_HOSTCONFIG} \
58+
-DENABLE_HIP=ON \
59+
-DENABLE_OPENMP=ON \
60+
-DENABLE_CUDA=OFF \
61+
-DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \
62+
"$@" \
63+
..
64+
65+
echo
66+
echo "***********************************************************************"
67+
echo
68+
echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJA"
69+
echo
70+
echo " Please note that you have to have a consistent build environment"
71+
echo " when you make RAJA as cmake may reconfigure; load the appropriate"
72+
echo " cce module (${COMP_VER}) when building."
73+
echo
74+
echo " module load cce-tce/${COMP_VER}"
75+
echo " srun -n1 make"
76+
echo
77+
echo "***********************************************************************"

0 commit comments

Comments
 (0)