Skip to content

Commit febb18b

Browse files
committed
Merge branch 'llvm' into review/yang/dg2
2 parents 57dbf29 + f11caf9 commit febb18b

File tree

95 files changed

+2921
-1587
lines changed

Some content is hidden

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

95 files changed

+2921
-1587
lines changed

.github/scripts/compute_benchmarks.py

Lines changed: 0 additions & 206 deletions
This file was deleted.

.github/workflows/benchmarks_compute.yml

Lines changed: 7 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ permissions:
4242
jobs:
4343
e2e-build-hw:
4444
# Run only on upstream; forks will not have the HW
45-
if: github.repository == 'oneapi-src/unified-runtime'
45+
# if: github.repository == 'oneapi-src/unified-runtime'
4646
name: Build SYCL, UR, run Compute Benchmarks
4747
strategy:
4848
matrix:
@@ -88,6 +88,9 @@ jobs:
8888
with:
8989
path: ur-repo
9090

91+
- name: Install pip packages
92+
run: pip install -r ${{github.workspace}}/ur-repo/third_party/requirements.txt
93+
9194
# We need to fetch special ref for proper PR's merge commit. Note, this ref may be absent if the PR is already merged.
9295
- name: Fetch PR's merge commit
9396
if: ${{ inputs.pr_no != 0 }}
@@ -131,44 +134,13 @@ jobs:
131134
- name: Build SYCL
132135
run: cmake --build ${{github.workspace}}/sycl_build -j
133136

134-
- name: Set additional env. vars
135-
run: |
136-
echo "${{github.workspace}}/sycl_build/bin" >> $GITHUB_PATH
137-
echo "LD_LIBRARY_PATH=${{github.workspace}}/sycl_build/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
138-
139-
# Running (newly built) sycl-ls sets up some extra variables
140-
- name: Setup SYCL variables
141-
run: |
142-
which clang++ sycl-ls
143-
SYCL_PI_TRACE=-1 sycl-ls
144-
145-
- name: Checkout Compute Benchmarks
146-
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
147-
with:
148-
repository: intel/compute-benchmarks
149-
path: compute-benchmarks-repo
150-
submodules: recursive
151-
152-
- name: Configure Compute Benchmarks
153-
run: >
154-
cmake
155-
-B ${{github.workspace}}/compute-benchmarks-build/
156-
-S ${{github.workspace}}/compute-benchmarks-repo/
157-
-DCMAKE_BUILD_TYPE=Release
158-
-DBUILD_SYCL=ON
159-
-DSYCL_COMPILER_ROOT=${{github.workspace}}/sycl_build
160-
-DALLOW_WARNINGS=ON
161-
162-
- name: Build Compute Benchmarks
163-
run: cmake --build ${{github.workspace}}/compute-benchmarks-build/ -j
164-
165137
- name: Set oneAPI Device Selector
166138
run: |
167139
echo "ONEAPI_DEVICE_SELECTOR=${{ matrix.adapter.str_name }}:${{ matrix.adapter.unit }}" >> $GITHUB_ENV
168140
169-
- name: Run SYCL API Overhead benchmark
141+
- name: Run benchmarks
170142
id: benchmarks
171-
run: ${{ github.workspace }}/ur-repo/.github/scripts/compute_benchmarks.py ${{ github.workspace }}/compute-benchmarks-build/bin/ ${{ inputs.bench_script_params }}
143+
run: numactl -N 0 ${{ github.workspace }}/ur-repo/scripts/benchmarks/main.py ~/bench_workdir ${{github.workspace}}/sycl_build ${{ inputs.bench_script_params }}
172144

173145
- name: Add comment to PR
174146
uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
@@ -188,7 +160,7 @@ jobs:
188160
const test_status = '${{ steps.benchmarks.outcome }}';
189161
const job_status = '${{ job.status }}';
190162
const params = '${{ inputs.bench_script_params }}';
191-
const body = `Compute Benchmarks ${adapter} run (with params: ${params}):\n${url}\nJob status: ${job_status}. Test status: ${test_status}.\n ${markdown}`;
163+
const body = `Compute Benchmarks ${adapter} run (${params}):\n${url}\nJob status: ${job_status}. Test status: ${test_status}.\n ${markdown}`;
192164
193165
github.rest.issues.createComment({
194166
issue_number: pr_no,

.github/workflows/multi_device.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
name: Multi Device testing
3+
4+
on: [push, pull_request]
5+
6+
concurrency:
7+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
8+
cancel-in-progress: true
9+
10+
permissions:
11+
contents: read
12+
13+
jobs:
14+
examples:
15+
name: Multi Device testing
16+
if: github.repository == 'oneapi-src/unified-runtime' # run only on upstream; forks won't have the HW
17+
strategy:
18+
matrix:
19+
adapter: [
20+
{name: L0}
21+
]
22+
build_type: [Debug, Release]
23+
compiler: [{c: gcc, cxx: g++}] # TODO: investigate why memory-adapter-level_zero hangs with clang
24+
25+
runs-on: "${{matrix.adapter.name}}_2T"
26+
27+
steps:
28+
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
29+
30+
- name: Install pip packages
31+
run: pip install -r third_party/requirements.txt
32+
33+
# TODO: enable once test failure are fixed/ignored
34+
# - name: Download DPC++
35+
# run: |
36+
# wget -O ${{github.workspace}}/dpcpp_compiler.tar.gz https://github.com/intel/llvm/releases/download/nightly-2024-01-29/sycl_linux.tar.gz
37+
# mkdir dpcpp_compiler
38+
# tar -xvf ${{github.workspace}}/dpcpp_compiler.tar.gz -C dpcpp_compiler
39+
40+
- name: Configure CMake
41+
shell: bash -el {0}
42+
run: >
43+
cmake
44+
-B${{github.workspace}}/build
45+
-DCMAKE_C_COMPILER=${{matrix.compiler.c}}
46+
-DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
47+
-DCMAKE_BUILD_TYPE=${{matrix.build_type}}
48+
-DUR_DEVELOPER_MODE=ON
49+
-DUR_BUILD_TESTS=ON
50+
-DUR_BUILD_ADAPTER_${{matrix.adapter.name}}=ON
51+
-DUR_TEST_DEVICES_COUNT=2
52+
53+
- name: Build
54+
run: cmake --build ${{github.workspace}}/build -j $(nproc)
55+
56+
- name: Test adapter specific
57+
working-directory: ${{github.workspace}}/build
58+
run: ctest -C ${{matrix.build_type}} --output-on-failure -L "adapter-specific" --timeout 180
59+
60+
- name: Test adapters
61+
working-directory: ${{github.workspace}}/build
62+
run: env UR_CTS_ADAPTER_PLATFORM="${{matrix.adapter.platform}}" ctest -C ${{matrix.build_type}} --output-on-failure -L "conformance" --timeout 180

0 commit comments

Comments
 (0)