[SYCL][Graph] Avoid unnecessary inter-partition dependencies #109
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: SYCL Pre Commit on Linux | |
on: | |
# We rely on "Fork pull request workflows from outside collaborators" - | |
# "Require approval for all outside collaborators" at | |
# https://github.com/intel/llvm/settings/actions for security. | |
pull_request: | |
branches: | |
- sycl | |
- sycl-devops-pr/** | |
- sycl-rel-** | |
# Do not run builds if changes are only in the following locations | |
paths-ignore: | |
- '.github/ISSUE_TEMPLATE/**' | |
- '.github/CODEOWNERS' | |
- 'sycl/doc/**' | |
- 'sycl/gdb/**' | |
- 'clang/docs/**' | |
- '**.md' | |
- '**.rst' | |
- '.github/workflows/sycl_windows_*.yml' | |
- '.github/workflows/sycl_macos_*.yml' | |
- 'devops/containers/**' | |
- 'devops/actions/build_container/**' | |
concurrency: | |
# Cancel a currently running workflow from the same PR, branch or tag. | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
detect_changes: | |
uses: ./.github/workflows/sycl_detect_changes.yml | |
build: | |
needs: [detect_changes] | |
if: always() && success() | |
uses: ./.github/workflows/sycl_linux_build.yml | |
with: | |
build_ref: ${{ github.sha }} | |
merge_ref: '' | |
build_cache_root: "/__w/" | |
build_artifact_suffix: "default" | |
build_cache_suffix: "default" | |
# FIXME: UR can't find /opt/rocm/hsa with rocm-6.0.0. Previous rocm-5.7.0 had it. | |
build_image: "ghcr.io/intel/llvm/ubuntu2204_build:7ed894ab0acc8ff09262113fdb08940d22654a30" | |
changes: ${{ needs.detect_changes.outputs.filters }} | |
test: | |
needs: [build, detect_changes] | |
if: ${{ always() && !cancelled() && needs.build.outputs.build_conclusion == 'success' }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- name: AMD/HIP | |
runner: '["Linux", "amdgpu"]' | |
# FIXME: Keep in sync with the above hack. | |
image: ghcr.io/intel/llvm/ubuntu2204_build:7ed894ab0acc8ff09262113fdb08940d22654a30 | |
image_options: -u 1001 --device=/dev/dri --device=/dev/kfd | |
target_devices: ext_oneapi_hip:gpu | |
- name: Intel | |
runner: '["Linux", "gen12"]' | |
image: ghcr.io/intel/llvm/ubuntu2204_intel_drivers:latest | |
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN | |
target_devices: ext_oneapi_level_zero:gpu;opencl:gpu;opencl:cpu | |
reset_gpu: true | |
install_drivers: ${{ contains(needs.detect_changes.outputs.filters, 'drivers') }} | |
- name: Matrix E2E tests on Intel Arc A-Series Graphics | |
runner: '["Linux", "arc"]' | |
image: ghcr.io/intel/llvm/ubuntu2204_intel_drivers:latest | |
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN | |
target_devices: ext_oneapi_level_zero:gpu;opencl:gpu | |
reset_gpu: true | |
install_drivers: ${{ contains(needs.detect_changes.outputs.filters, 'drivers') }} | |
extra_lit_opts: --param matrix-xmx8=True --param gpu-intel-dg2=True | |
env: '{"LIT_FILTER":"Matrix/"}' | |
uses: ./.github/workflows/sycl_linux_run_tests.yml | |
with: | |
name: ${{ matrix.name }} | |
runner: ${{ matrix. runner }} | |
image: ${{ matrix.image }} | |
image_options: ${{ matrix.image_options }} | |
target_devices: ${{ matrix.target_devices }} | |
reset_gpu: ${{ matrix.reset_gpu }} | |
install_drivers: ${{ matrix.install_drivers }} | |
extra_lit_opts: ${{ matrix.extra_lit_opts }} | |
env: ${{ matrix.env || '{}' }} | |
ref: ${{ github.sha }} | |
merge_ref: '' | |
sycl_toolchain_artifact: sycl_linux_default | |
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }} | |
sycl_toolchain_decompress_command: ${{ needs.build.outputs.artifact_decompress_command }} | |
test-perf: | |
needs: [build, detect_changes] | |
if: | | |
always() && !cancelled() | |
&& needs.build.outputs.build_conclusion == 'success' | |
&& (contains(github.event.pull_request.labels.*.name, 'run-perf-tests') | |
|| contains(needs.detect_changes.outputs.filters, 'perf-tests')) | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- name: Perf tests on Intel GEN12 Graphics system | |
runner: '["Linux", "gen12"]' | |
- name: Perf tests on Intel Arc A-Series Graphics system | |
runner: '["Linux", "arc"]' | |
uses: ./.github/workflows/sycl_linux_run_tests.yml | |
with: | |
name: ${{ matrix.name }} | |
runner: ${{ matrix. runner }} | |
image: ghcr.io/intel/llvm/ubuntu2204_intel_drivers:latest | |
image_options: -u 1001 --device=/dev/dri --privileged --cap-add SYS_ADMIN | |
target_devices: all | |
reset_gpu: true | |
env: '{"LIT_FILTER":"PerformanceTests/"}' | |
extra_lit_opts: -a -j 1 --param enable-perf-tests=True | |
ref: ${{ github.sha }} | |
merge_ref: '' | |
sycl_toolchain_artifact: sycl_linux_default | |
sycl_toolchain_archive: ${{ needs.build.outputs.artifact_archive_name }} | |
sycl_toolchain_decompress_command: ${{ needs.build.outputs.artifact_decompress_command }} |