@@ -12,25 +12,26 @@ jobs:
1212 runs-on : ${{ matrix.runner }}
1313 container : registry.cern.ch/alisw/slc9-gpu-builder:latest
1414 strategy :
15+ fail-fast : false
1516 matrix :
1617 name : [nvidia-h100, nvidia-l40s, amd-mi300x, amd-w7900]
1718 include :
1819 - name : nvidia-h100
1920 runner : cern-nextgen-h100
20- cmake_args : -DENABLE_CUDA=1 -DENABLE_HIP=0 -DENABLE_OPENCL=0 - DCUDA_COMPUTETARGET=90
21- ca_args : --gpuType CUDA --gpuDevice 0
21+ cmake_args : -DENABLE_CUDA=1 -DENABLE_HIP=0 -DCUDA_COMPUTETARGET=90
22+ ca_args : --gpuType CUDA # --RTCTECHloadLaunchBoundsFromFile genGPUArch/nvidia-h100.par
2223 - name : nvidia-l40s
2324 runner : cern-nextgen-l40s
24- cmake_args : -DENABLE_CUDA=1 -DENABLE_HIP=0 -DENABLE_OPENCL=0 - DCUDA_COMPUTETARGET=89
25- ca_args : --gpuType CUDA --gpuDevice 0
25+ cmake_args : -DENABLE_CUDA=1 -DENABLE_HIP=0 -DCUDA_COMPUTETARGET=89
26+ ca_args : --gpuType CUDA # --RTCTECHloadLaunchBoundsFromFile genGPUArch/nvidia-l40s.par
2627 - name : amd-mi300x
2728 runner : cern-nextgen-mi300x
28- cmake_args : -DENABLE_CUDA=0 -DENABLE_HIP=1 -DENABLE_OPENCL=0 - DHIP_AMDGPUTARGET=gfx942
29- ca_args : --gpuType HIP --gpuDevice 0
29+ cmake_args : -DENABLE_CUDA=0 -DENABLE_HIP=1 -DHIP_AMDGPUTARGET=gfx942
30+ ca_args : --gpuType HIP --RTCTECHloadLaunchBoundsFromFile genGPUArch/amd-mi300x.par
3031 - name : amd-w7900
3132 runner : cern-nextgen-w7900
32- cmake_args : -DENABLE_CUDA=0 -DENABLE_HIP=1 -DENABLE_OPENCL=0 - DHIP_AMDGPUTARGET=gfx1100
33- ca_args : --gpuType HIP --gpuDevice 0
33+ cmake_args : -DENABLE_CUDA=0 -DENABLE_HIP=1 -DHIP_AMDGPUTARGET=gfx1100
34+ ca_args : --gpuType HIP --RTCTECHloadLaunchBoundsFromFile genGPUArch/amd-w7900.par
3435
3536 name : ${{ matrix.name }}
3637 steps :
@@ -39,21 +40,33 @@ jobs:
3940
4041 - name : Build and Run
4142 run : |
43+ mkdir -p ${STANDALONE_DIR}
4244 . ${WORK_DIR}/${ALIBUILD_ARCH_PREFIX}/ninja-fortran/fortran-v1.11.1.g9-3/etc/profile.d/init.sh
4345 . ${WORK_DIR}/${ALIBUILD_ARCH_PREFIX}/O2/${O2_REVISION}/etc/profile.d/init.sh
44- export ROOT_INCLUDE_PATH=$(echo "$ROOT_INCLUDE_PATH" | cut -d: -f3-)
45-
46- mkdir -p ${STANDALONE_DIR}
47- curl -o /root/events.tar.xz https://cernbox.cern.ch/remote.php/dav/public-files/cuQAwSojyDrl6FR/events.tar.xz
48- tar -xf /root/events.tar.xz -C ${STANDALONE_DIR}
49- rm /root/events.tar.xz
5046
51- cmake -B ${BUILD_DIR} ${{ matrix.cmake_args }} -DGPUCA_BUILD_EVENT_DISPLAY=0 -DCMAKE_INSTALL_PREFIX=${STANDALONE_DIR} ${GITHUB_WORKSPACE}/GPU/GPUTracking/Standalone/
47+ cmake -B ${BUILD_DIR} ${{ matrix.cmake_args }} -DENABLE_OPENCL=0 - DGPUCA_BUILD_EVENT_DISPLAY=0 -DGPUCA_DETERMINISTIC_MODE=GPU -DCMAKE_INSTALL_PREFIX=${STANDALONE_DIR} ${GITHUB_WORKSPACE}/GPU/GPUTracking/Standalone/
5248 cd ${BUILD_DIR}
5349 make install -j8
50+
5451 cd ${STANDALONE_DIR}
55- ${STANDALONE_DIR}/ca -e o2-simple -g ${{ matrix.ca_args }} --debug 1 > ${ARTIFACT_FILE}
56- cat ${ARTIFACT_FILE}
52+ mkdir -p ${STANDALONE_DIR}/genGPUArch
53+ curl -v -o ${STANDALONE_DIR}/genGPUArch/${{ matrix.name }}.par https://cernbox.cern.ch/remote.php/dav/public-files/SfYXgQOHFga2w75/genGPUArch/${{ matrix.name }}.par
54+
55+ mkdir -p ${STANDALONE_DIR}/events
56+
57+ curl -v -o ${STANDALONE_DIR}/events/50kHz.tar.xz https://cernbox.cern.ch/remote.php/dav/public-files/SfYXgQOHFga2w75/events/50kHz.tar.xz
58+ tar -xf ${STANDALONE_DIR}/events/50kHz.tar.xz -C ${STANDALONE_DIR}/events
59+ ${STANDALONE_DIR}/ca -e 50kHz -g --seed 0 --memSize 15000000000 --sync --runs 1 --RTCenable --PROCdeterministicGPUReconstruction 1 --RTCoptSpecialCode 1 --debug 1 ${{ matrix.ca_args }} > ${ARTIFACT_FILE}
60+
61+ curl -v -o ${STANDALONE_DIR}/events/o2-simple.tar.xz https://cernbox.cern.ch/remote.php/dav/public-files/SfYXgQOHFga2w75/events/o2-simple.tar.xz
62+ tar -xf ${STANDALONE_DIR}/events/o2-simple.tar.xz -C ${STANDALONE_DIR}/events
63+ ${STANDALONE_DIR}/ca -e o2-simple -g --seed 0 --memSize 20000000000 --sync --runs 1 --RTCenable --PROCdeterministicGPUReconstruction 1 --RTCoptSpecialCode 1 --debug 6 ${{ matrix.ca_args }}
64+
65+ curl -v -o ${STANDALONE_DIR}/o2-simple-GPU.out https://cernbox.cern.ch/remote.php/dav/public-files/SfYXgQOHFga2w75/o2-simple-GPU.out
66+ cmp ${STANDALONE_DIR}/GPU.out ${STANDALONE_DIR}/o2-simple-GPU.out
67+ rm -rf ${STANDALONE_DIR}/GPU.out ${STANDALONE_DIR}/o2-simple-GPU.out
68+
69+ rm -rf ${STANDALONE_DIR}/events
5770 env :
5871 WORK_DIR : /cvmfs/alice.cern.ch
5972 ALIBUILD_ARCH_PREFIX : el9-x86_64/Packages
0 commit comments