Skip to content

Commit de02e5a

Browse files
author
Chen, Brox
committed
Merge branch 'sycl' of https://github.com/intel/llvm into reorg-folder
2 parents 0a9ae5a + be35755 commit de02e5a

File tree

6,458 files changed

+1084379
-696062
lines changed

Some content is hidden

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

6,458 files changed

+1084379
-696062
lines changed

.git-blame-ignore-revs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,6 @@ dd3c26a045c081620375a878159f536758baba6e
5555
f98ee40f4b5d7474fc67e82824bf6abbaedb7b1c
5656
2238dcc39358353cac21df75c3c3286ab20b8f53
5757
f9008e6366c2496b1ca1785b891d5578174ad63e
58+
59+
# [libc++][NFC] Apply clang-format on large parts of the code base
60+
5aa03b648b827128d439f705cd7d57d59673741d

.github/workflows/linux_matrix_e2e_on_nightly.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,17 @@ jobs:
2828
reset_gpu: false
2929

3030
- name: Intel
31-
runner: '["Linux", "gen9"]'
31+
runner: '["Linux", "gen12"]'
3232
image: ghcr.io/intel/llvm/sycl_ubuntu2204_nightly:latest
33-
extra_image_opts: -u 1001
33+
extra_image_opts:
3434
extra_cmake_args:
3535
target_devices: ext_oneapi_level_zero:gpu;opencl:gpu;opencl:cpu
3636
reset_gpu: true
3737

3838
- name: ESIMD Emu
3939
runner: '["Linux", "x86-cpu"]'
4040
image: ghcr.io/intel/llvm/sycl_ubuntu2204_nightly:latest
41-
extra_image_opts: -u 1001
41+
extra_image_opts:
4242
extra_cmake_args:
4343
target_devices: ext_intel_esimd_emulator:gpu
4444
reset_gpu: false
@@ -47,7 +47,7 @@ jobs:
4747
name: ${{ matrix.name }}
4848
runner: ${{ matrix. runner }}
4949
image: ${{ matrix.image }}
50-
image_options: --device=/dev/dri --privileged --cap-add SYS_ADMIN ${{ matrix.extra_image_opts }}
50+
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN ${{ matrix.extra_image_opts }}
5151
extra_cmake_args: ${{ matrix.extra_cmake_args }}
5252
target_devices: ${{ matrix.target_devices }}
5353
ref: ${{ inputs.ref }}

.github/workflows/linux_single_e2e.yml

Lines changed: 40 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,40 +5,59 @@ on:
55
inputs:
66
name:
77
type: string
8+
required: True
9+
810
runner:
911
type: string
12+
required: True
1013
image:
1114
type: string
15+
required: True
1216
image_options:
1317
type: string
14-
extra_cmake_args:
15-
type: string
18+
required: False
19+
1620
target_devices:
1721
type: string
18-
ref:
22+
required: True
23+
extra_cmake_args:
24+
description: |
25+
If empty, then HIP_PLATFORM and AMD_ARCH would be automatically added
26+
if inputs.target_devices contains 'ext_oneapi_hip'
1927
type: string
20-
reset_gpu:
28+
required: False
29+
30+
ref:
2131
type: string
32+
required: True
2233
merge_ref:
2334
description: |
2435
Commit-ish to merge post-checkout if non-empty. Must be reachable from
2536
the default_branch input paramter.
2637
type: string
2738
default: 'FETCH_HEAD'
39+
required: False
2840

2941
sycl_toolchain_artifact:
3042
type: string
3143
default: ''
44+
required: False
3245
sycl_toolchain_archive:
3346
type: string
3447
default: ''
48+
required: False
3549
sycl_toolchain_decompress_command:
3650
type: string
3751
default: ''
52+
required: False
3853

54+
reset_gpu:
55+
type: string
56+
required: False
3957
env:
4058
type: string
4159
default: '{}'
60+
required: False
4261

4362
jobs:
4463
lin_e2e_only:
@@ -66,11 +85,7 @@ jobs:
6685
path: llvm
6786
ref: ${{ inputs.ref }}
6887
merge_ref: ${{ inputs.merge_ref }}
69-
# We run build and HIP E2E tests under different users on the same
70-
# runners, so need to use distinct cache paths.
71-
cache_path: "/__w/repo_cache_e2e/"
72-
- name: Hack to fix testing
73-
run: rm -rf /__w/repo_cache_e2e/ || true
88+
cache_path: "/__w/repo_cache/"
7489
- name: Install drivers
7590
if: env.compute_runtime_tag != ''
7691
run: |
@@ -111,11 +126,25 @@ jobs:
111126
- run: which clang++ sycl-ls
112127
- run: sycl-ls --verbose
113128
- run: SYCL_PI_TRACE=-1 sycl-ls
129+
- name: Deduce CMake options
130+
id: cmake_opts
131+
shell: bash
132+
run: |
133+
if [ -n "${{ inputs.extra_cmake_args }}" ]; then
134+
echo 'opts=${{ inputs.extra_cmake_args }}' >> $GITHUB_OUTPUT
135+
else
136+
if [ "${{ contains(inputs.target_devices, 'ext_oneapi_hip') }}" == "true" ]; then
137+
echo 'opts=-DHIP_PLATFORM="AMD" -DAMD_ARCH="gfx1031"' >> $GITHUB_OUTPUT
138+
else
139+
echo 'opts=' >> $GITHUB_OUTPUT
140+
fi
141+
fi
142+
- run: echo ${{ steps.cmake_opts.outputs.opts }}
114143
- name: Configure
115144
run: |
116-
cmake -GNinja -B./build-e2e -S./llvm/sycl/test-e2e -DSYCL_TEST_E2E_TARGETS="${{ inputs.target_devices }}" -DCMAKE_CXX_COMPILER="$(which clang++)" -DLLVM_LIT="$PWD/llvm/llvm/utils/lit/lit.py" ${{ inputs.extra_cmake_args }}
145+
cmake -GNinja -B./build-e2e -S./llvm/sycl/test-e2e -DSYCL_TEST_E2E_TARGETS="${{ inputs.target_devices }}" -DCMAKE_CXX_COMPILER="$(which clang++)" -DLLVM_LIT="$PWD/llvm/llvm/utils/lit/lit.py" ${{ steps.cmake_opts.outputs.opts }}
117146
- name: SYCL End-to-end tests
118147
env:
119-
LIT_OPTS: -v --no-progress-bar --show-unsupported --max-time 3600 --time-tests
148+
LIT_OPTS: -v --no-progress-bar --show-unsupported --show-pass --show-xfail --max-time 3600 --time-tests
120149
run: |
121150
ninja -C build-e2e check-sycl-e2e

.github/workflows/sycl_detect_changes.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
runs-on: [Linux, build]
1616
timeout-minutes: 3
1717
outputs:
18-
filters: ${{ steps.changes.outputs.changes }}
18+
filters: ${{ steps.result.outputs.result }}
1919
steps:
2020
- name: Check file changes
2121
uses: dorny/paths-filter@4512585405083f25c027a35db413c2b3b9006d50
@@ -59,3 +59,18 @@ jobs:
5959
- *drivers_and_configs
6060
# Temporary, until plugins are enabled in nightly image.
6161
- sycl/**
62+
63+
- name: Set output
64+
id: result
65+
uses: actions/github-script@v6
66+
with:
67+
script: |
68+
console.log("Number of files changed:");
69+
console.log(context.payload.pull_request.changed_files);
70+
if (context.payload.pull_request.changed_files < 500) {
71+
return '${{ steps.changes.outputs.changes }}';
72+
}
73+
// Treat everything as changed for huge PRs.
74+
return ["llvm", "llvm_spirv", "clang", "sycl_fusion", "xptifw", "libclc", "sycl", "ci", "drivers_and_configs", "test_build"];
75+
76+
- run: echo '${{ steps.result.outputs.result }}'

.github/workflows/sycl_linux_build_and_test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ jobs:
234234
target_devices: ${{ matrix.targets }}
235235
ref: ${{ inputs.build_ref || github.sha }}
236236
merge_ref: ${{ inputs.merge_ref }}
237-
reset_gpu: ${{ contains(matrix.runs-on, 'gen9') && contains(matrix.runs-on, 'Linux') }}
237+
reset_gpu: ${{ contains(matrix.runs-on, 'gen12') && contains(matrix.runs-on, 'Linux') }}
238238

239239
sycl_toolchain_artifact: sycl_linux_${{ inputs.build_artifact_suffix }}
240240
sycl_toolchain_archive: ${{ inputs.artifact_archive_name }}
@@ -257,7 +257,7 @@ jobs:
257257
options: ${{ matrix.container_options }}
258258
steps:
259259
- name: Reset GPU
260-
if: ${{ contains(matrix.config, 'gen9') }}
260+
if: ${{ contains(matrix.config, 'gen12') }}
261261
run: |
262262
sudo mount -t debugfs none /sys/kernel/debug
263263
sudo bash -c 'echo 1 > /sys/kernel/debug/dri/0/i915_wedged'
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Experiment with Linux GEN12 runners
2+
run-name: Linux GEN12 ${{ inputs.env }} on ${{ inputs.devices }}
3+
4+
on:
5+
workflow_dispatch:
6+
inputs:
7+
env:
8+
default: '{"LIT_FILTER":""}'
9+
devices:
10+
default: 'ext_oneapi_level_zero:gpu'
11+
12+
jobs:
13+
e2e:
14+
uses: ./.github/workflows/linux_single_e2e.yml
15+
with:
16+
name: "Linux GEN12 E2E"
17+
runner: '["Linux", "gen12"]'
18+
image: ghcr.io/intel/llvm/sycl_ubuntu2204_nightly:latest
19+
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN
20+
target_devices: ${{ inputs.devices }}
21+
ref: ${{ github.sha }}
22+
23+
env: ${{ inputs.env }}

.github/workflows/sycl_nightly.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ jobs:
1212
uses: ./.github/workflows/sycl_gen_test_matrix.yml
1313
with:
1414
# Restore once plugins are enabled in the build.
15-
# lts_config: "hip_amdgpu;ocl_gen9;ocl_x64;l0_gen9;esimd_emu;cuda_aws;win_l0_gen12"
16-
lts_config: "ocl_gen9;ocl_x64;l0_gen9;win_l0_gen12"
15+
# lts_config: "hip_amdgpu;ocl_gen12;ocl_x64;l0_gen12;esimd_emu;cuda_aws;win_l0_gen12"
16+
lts_config: "ocl_gen12;ocl_x64;l0_gen12;win_l0_gen12"
1717

1818
ubuntu2204_build_test:
1919
if: github.repository == 'intel/llvm'
@@ -52,7 +52,7 @@ jobs:
5252

5353
ubuntu2204_docker_build_push:
5454
if: github.repository == 'intel/llvm'
55-
runs-on: ubuntu-22.04
55+
runs-on: [Linux, build]
5656
needs: ubuntu2204_build_test
5757
steps:
5858
- uses: actions/checkout@v3

.github/workflows/sycl_post_commit.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ on:
55
branches:
66
- sycl
77
- sycl-devops-pr/**
8+
- llvmspirv_pulldown
89

910
jobs:
1011
# This job generates matrix of tests for SYCL End-to-End tests
@@ -13,7 +14,7 @@ jobs:
1314
if: github.repository == 'intel/llvm'
1415
uses: ./.github/workflows/sycl_gen_test_matrix.yml
1516
with:
16-
lts_config: "l0_gen9;win_l0_gen12"
17+
lts_config: "l0_gen12;win_l0_gen12"
1718
linux_self_prod:
1819
name: Linux (Self build + shared libraries + no-assertions)
1920
if: github.repository == 'intel/llvm'

.github/workflows/sycl_precommit.yml renamed to .github/workflows/sycl_precommit_linux.yml

Lines changed: 8 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
name: SYCL Pre Commit
1+
name: SYCL Pre Commit on Linux
22

33
on:
44
pull_request_target:
55
branches:
66
- sycl
77
- sycl-devops-pr/**
8+
- llvmspirv_pulldown
89
# Do not run builds if changes are only in the following locations
910
paths-ignore:
1011
- '.github/ISSUE_TEMPLATE/**'
@@ -28,6 +29,7 @@ jobs:
2829
lint:
2930
needs: [detect_changes]
3031
if: |
32+
github.event.pull_request.head.repo.full_name == 'intel/llvm' ||
3133
!contains(needs.detect_changes.outputs.filters, 'ci')
3234
runs-on: [Linux, build]
3335
container:
@@ -61,12 +63,13 @@ jobs:
6163
test_matrix:
6264
needs: [detect_changes]
6365
if: |
66+
github.event.pull_request.head.repo.full_name == 'intel/llvm' ||
6467
!contains(needs.detect_changes.outputs.filters, 'ci')
6568
name: Generate Test Matrix
6669
uses: ./.github/workflows/sycl_gen_test_matrix.yml
6770
with:
6871
ref: ${{ github.event.pull_request.head.sha }}
69-
lts_config: "hip_amdgpu;lin_intel;esimd_emu;cuda_aws;win_l0_gen12"
72+
lts_config: "hip_amdgpu;lin_intel;esimd_emu;cuda_aws"
7073

7174
linux_default:
7275
name: Linux
@@ -76,41 +79,17 @@ jobs:
7679
if: |
7780
always()
7881
&& (success() || contains(github.event.pull_request.labels.*.name, 'ignore-lint'))
79-
&& contains(needs.detect_changes.outputs.filters, 'test_build')
80-
&& !contains(needs.detect_changes.outputs.filters, 'ci')
82+
&& (github.event.pull_request.head.repo.full_name == 'intel/llvm'
83+
|| !contains(needs.detect_changes.outputs.filters, 'ci'))
8184
uses: ./.github/workflows/sycl_linux_build_and_test.yml
8285
secrets: inherit
8386
with:
8487
build_ref: ${{ github.event.pull_request.head.sha }}
88+
merge_ref: ${{ github.event.pull_request.base.sha }}
8589
build_cache_root: "/__w/"
8690
build_cache_size: "8G"
8791
build_artifact_suffix: "default"
8892
build_cache_suffix: "default"
8993
lts_matrix: ${{ needs.test_matrix.outputs.lts_lx_matrix }}
9094
lts_aws_matrix: ${{ needs.test_matrix.outputs.lts_aws_matrix }}
9195
check_filters: ${{ needs.detect_changes.outputs.filters }}
92-
93-
linux_e2e_on_nightly:
94-
name: Linux SYCL E2E on Nightly
95-
needs: [detect_changes]
96-
if: |
97-
!contains(needs.detect_changes.outputs.filters, 'test_build')
98-
&& !contains(needs.detect_changes.outputs.filters, 'ci')
99-
uses: ./.github/workflows/linux_matrix_e2e_on_nightly.yml
100-
secrets: inherit
101-
with:
102-
ref: ${{ github.event.pull_request.head.sha }}
103-
104-
windows_default:
105-
name: Windows
106-
needs: [lint, test_matrix, detect_changes]
107-
if: |
108-
always()
109-
&& (success() || contains(github.event.pull_request.labels.*.name, 'ignore-lint'))
110-
&& github.repository == 'intel/llvm'
111-
&& !contains(needs.detect_changes.outputs.filters, 'ci')
112-
uses: ./.github/workflows/sycl_windows_build_and_test.yml
113-
with:
114-
lts_matrix: ${{ needs.test_matrix.outputs.lts_wn_matrix }}
115-
build_ref: ${{ github.event.pull_request.head.sha }}
116-
check_filters: ${{ needs.detect_changes.outputs.filters }}

0 commit comments

Comments
 (0)