8000 added CI benchmarks on borealis back (#196) · oneapi-src/distributed-ranges@be8933a · GitHub
[go: up one dir, main page]

Skip to content

Commit be8933a

Browse files
authored
added CI benchmarks on borealis back (#196)
1 parent 0006a40 commit be8933a

File tree

2 files changed

+98
-0
lines changed

2 files changed

+98
-0
lines changed

.github/workflows/borealis.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# SPDX-FileCopyrightText: Intel Corporation
2+
#
3+
# SPDX-License-Identifier: BSD-3-Clause
4+
5+
name: "Borealis"
10000 6+
7+
on:
8+
workflow_dispatch:
9+
# 8am UTC is 12am PST, 1am PDT
10+
schedule:
11+
- cron: '0 8 * * *'
12+
13+
jobs:
14+
borealis:
15+
runs-on: borealis
16+
# It can finish in 30 minutes, but sometimes
17+
# borealis is slow and their are long pauses
18+
timeout-minutes: 480
19+
name: "Borealis Benchmarking"
20+
env:
21+
CXX: icpx
22+
CTEST_OUTPUT_ON_FAILURE: 1
23+
steps:
24+
- uses: actions/checkout@v4
25+
# Install python dependencies on login node because it needs an
26+
# internet connection
27+
- name: Install benchmark framework
28+
run: |
29+
/usr/bin/python3.10 -m venv venv
30+
source venv/bin/activate
31+
pip install src-python/drbench
32+
# Build Cmake files on login node because it needs an
33+
# internet connection to fetch dependencies
34+
- name: Setup CMake
35+
run: MKL_DIR=${MKLROOT}/lib/cmake/mkl TBB_DIR=${TBBROOT}/lib/cmake/tbb cmake -B build -DENABLE_SYCL=on .
36+
- name: Single node
37+
run: |
38+
# These nodes worked in the past x1002c6s5b0n0+x1002c6s6b0n0
39+
qsub -N "DR-bmk" -Wblock=true -l walltime=02:00:00 -j oe -o build/qsub-output-1.txt scripts/borealis-benchmark.sh ; sleep 10 ; cat build/*-1.txt
40+
- name: Upload benchmark results
41+
if: always()
42+
uses: actions/upload-artifact@v3
43+
with:
44+
name: log-borealis-bench
45+
path: |
46+
build/*.txt
47+
build/benchmarks/gbench/*.json
48+
build/benchmarks/gbench/*.png
49+
build/benchmarks/gbench/*.csv
50+
51+
publish:
52+
needs: [borealis]
53+
runs-on: dds-base
54+
if: ${{ github.ref == 'refs/heads/main' }}
55+
steps:
56+
- uses: actions/checkout@v4
57+
- name: Download benchmark results
58+
uses: actions/download-artifact@v3
59+
with:
60+
name: log-borealis-bench
61+
path: bench/borealis
62+
- name: Checkout gh-pages
63+
uses: actions/checkout@v4
64+
with:
65+
ref: gh-pages
66+
path: gh-pages
67+
- name: Publish to github pages
68+
run: |
69+
touch gh-pages/.nojekyll
70+
mkdir -p gh-pages/bench
71+
rm -rf gh-pages/bench/borealis
72+
cp -r bench/borealis gh-pages/bench
73+
cd gh-pages
74+
git config user.name github-actions
75+
git config user.email github-actions@github.com
76+
git add .
77+
# Ignore errors because no updates returns an error status.
78+
git commit --reset-author --amend -m "Update from github actions"
79+
git push --force origin gh-pages

scripts/borealis-benchmark.sh

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#! /bin/bash
2+
3+
# SPDX-FileCopyrightText: Intel Corporation
4+
#
5+
# SPDX-License-Identifier: BSD-3-Clause
6+
set -e
7+
8+
cd $PBS_O_WORKDIR
9+
10+
echo "Host: " $(hostname)
11+
echo "CWD: " $(pwd)
12+
module list
13+
14+
source venv/bin/activate
15+
16+
printenv > build/envdump.txt
17+
18+
# Builds dependencies and runs benchmarks
19+
cmake --build build -j --target aurora-bench > build/cmake-output-1.txt 2>&1

0 commit comments

Comments
 (0)
0