Skip to content

Commit a86ef0e

Browse files
committed
Merge branch 'develop' into ci/bowen/add-openmp-windows
2 parents 8aee6ce + e6baf5b commit a86ef0e

File tree

3 files changed

+29
-28
lines changed

3 files changed

+29
-28
lines changed

.gitlab/jobs/corona.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ rocmcc_5_7_1_hip_desul_atomics:
3838
SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %llvm-amdgpu@=5.7.1 ^hip@5.7.1"
3939
extends: .job_on_corona
4040

41-
clang_22_0_0_sycl_gcc_10_3_1_rocmcc_6_4_2:
41+
clang_22_0_0_sycl_gcc_10_3_1_rocmcc_6_4_3:
4242
variables:
4343
SPEC: " ~shared +sycl ~openmp +tests cxxflags==\"-w -fsycl -fsycl-unnamed-lambda -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906\" %sycl-clang-22-gcc-10"
44-
MODULE_LIST: "rocm/6.4.2"
45-
SYCL_PATH: "/usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.2"
44+
MODULE_LIST: "rocm/6.4.3"
45+
SYCL_PATH: "/usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.3"
4646
LD_LIBRARY_PATH: "${SYCL_PATH}/lib:${SYCL_PATH}/lib64:${LD_LIBRARY_PATH}"
4747
extends: .job_on_corona

docs/sphinx/dev_guide/ci_tasks.rst

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -190,46 +190,47 @@ Building the Compiler
190190
^^^^^^^^^^^^^^^^^^^^^
191191

192192
.. important:: Because Intel updates their compiler repo daily, it is possible
193-
that the head of the SYCL branch will fail to build. In the event that it
194-
does not build, try checking out an earlier commit. On the Intel/LLVM GitHub
195-
page, one can see which of their commits builds by checking the status
196-
badge next to each commit. Look for a commit that passes.
193+
that the head of the SYCL branch will fail to build. If it does not build,
194+
try checking out an earlier commit in your local cloned repo. On the
195+
`Intel/LLVM GitHub Project <https://github.com/intel/llvm>`_, you can see
196+
which of their commits builds by checking the status badge next to each
197+
commit. Look for a recent commit that passes.
197198

198199

199-
#. On LC machines, it is following the good neighbor policy to do your build on a compute node.
200+
#. On LC machines, please follow the good neighbor policy and do your build on a compute node.
200201

201202
Use an appropriate bank to get an interactive node, e.g on Corona::
202203

203204
flux alloc -t 60 -N 1 --bank=wbronze
204205

205-
#. Load the module of the version of GCC headers that you want to use. We typically use the system default, which on corona at time of writing is gcc/10.3.1-magic::
206+
#. Load the module of the version of GCC headers that you want to use. We typically use the system default, which on corona is currently gcc/10.3.1-magic. Set then environment variable ``GCC_VERSION`` to the GCC version, then load the module::
206207

207-
GCC_VERSION=10.3.1
208208
module load gcc/${GCC_VERSION}-magic
209209

210-
#. Load the module of the version of ROCm that you want to use::
211-
ROCM_VERSION=6.4.2
210+
#. Load the module of the version of ROCm that you want to use. Set the environment variable ``ROCM_VERSION`` to the ROCm version, then load the module::
211+
212212
module load rocm/${ROCM_VERSION}
213213

214-
#. Load Python module you want to use. At time of writing, the LLVM configure requires at least version 3.7. we use Corona default::
215-
PYTHON_VERSION=3.9.12
214+
#. Load Python module you want to use. The LLVM configure requires at least version 3.7. Set the environment variable ``PYTHON_VERSION`` to the Python version, then load the module::
215+
216216
module load python/${PYTHON_VERSION}
217217
218218
#. Clone the SYCL branch of Intel's LLVM compiler::
219219

220220
git clone https://github.com/intel/llvm -b sycl
221221

222-
#. cd into the LLVM folder and extract the GIT SHA for naming the install directories. The install directory uses the naming convention ``clang_sycl_<git sha>_hip_gcc<version>_rocm<version>``::
222+
#. Go into the LLVM folder and get the Git SHA for the commit hash you are building. The first 12 characters of the hash value are used in the name of the compiler install directory. To get the first 12 characters of the hash value::
223223

224224
cd llvm
225-
GIT_SHA=$(git rev-parse --short=12 HEAD)
226-
INSTALL_PREFIX=/usr/workspace/raja-dev/clang_sycl_${GIT_SHA}_hip_gcc${GCC_VERSION}_rocm${ROCM_VERSION}
225+
git rev-parse --short=12 HEAD
227226

228-
#. Build the compiler.
227+
#. Then, set the environment variable ``GIT_SHA`` to the hash value, and set the environment variable ``INSTALL_PREFIX`` to the name of the installation directory, which has the following form: ``/usr/workspace/raja-dev/clang_sycl_${GIT_SHA}_hip_gcc${GCC_VERSION}_rocm${ROCM_VERSION}``
229228

230-
a. Configure
229+
#. After, the compiler repo code is in place and the build environment is set as described in the previous steps, build and install the compiler.
231230

232-
.. code-block:: bash
231+
a. Configure:
232+
233+
.. code-block:: bash
233234
234235
python3 buildbot/configure.py --hip -o buildrocm${ROCM_VERSION} \
235236
--cmake-gen "Unix Makefiles" \
@@ -244,16 +245,16 @@ Building the Compiler
244245
--cmake-opt=-DUR_HIP_HSA_INCLUDE_DIR=/opt/rocm-${ROCM_VERSION}/hsa/include/hsa \
245246
--cmake-opt=-DUR_HIP_LIB_DIR=/opt/rocm-${ROCM_VERSION}/lib
246247
247-
#. Build::
248+
b. Build::
248249
249250
python buildbot/compile.py -o buildrocm${ROCM_VERSION}
250251
251-
#. Install::
252+
c. Install::
252253
253254
cp -rp buildrocm${ROCM_VERSION}/install ${INSTALL_PREFIX}
254255
cd ..
255256
256-
#. Set the permissions of the folder, and everything in it to 750::
257+
#. Set the permissions of the installation folder, and everything in it to 750::
257258

258259
chmod 750 ${INSTALL_PREFIX} -R
259260

@@ -270,7 +271,7 @@ Using the compiler
270271

271272
#. Load the version of ROCm that you used when building the compiler, for example::
272273

273-
ROCM_VERSION=6.4.2
274+
ROCM_VERSION=6.4.3
274275
module load rocm/${ROCM_VERSION}
275276

276277
#. Navigate to the root of your local RAJA checkout space::
@@ -281,15 +282,15 @@ Using the compiler
281282

282283
This is the ``INSTALL_PREFIX`` used above. For example::
283284

284-
SYCL_INSTALL_PREFIX=/usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.2
285+
SYCL_INSTALL_PREFIX=/usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.3
285286

286287
#. Run the test config script::
287288

288289
./scripts/lc-builds/corona_sycl.sh ${SYCL_INSTALL_PREFIX}
289290

290291
#. As indicated in the output of the ``corona_sycl.sh`` script the SYCL compiler libraries need to be on the ``LD_LIBRARY_PATH``::
291-
292-
export LD_LIBRARY_PATH=${SYCL_INSTALL_PREFIX}/lib:${SYCL_INSTALL_PREFIX}/lib64:$LD_LIBRARY_PATH
292+
293+
export LD_LIBRARY_PATH=${SYCL_INSTALL_PREFIX}/lib:${SYCL_INSTALL_PREFIX}/lib64:$LD_LIBRARY_PATH
293294

294295
#. cd into the generated build directory::
295296

scripts/lc-builds/corona_sycl.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ if [[ $# -lt 1 ]]; then
1515
echo " 1) SYCL compiler installation path"
1616
echo
1717
echo "For example: "
18-
echo " corona_sycl.sh /usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.2"
18+
echo " corona_sycl.sh /usr/workspace/raja-dev/clang_sycl_16b7bcb09915_hip_gcc10.3.1_rocm6.4.3"
1919
exit
2020
fi
2121

0 commit comments

Comments
 (0)