Skip to content

Commit

Permalink
[CI] Run ESIMD tests on Arc in precommit when ESIMD changed (#12651)
Browse files Browse the repository at this point in the history
Signed-off-by: Sarnie, Nick <nick.sarnie@intel.com>
  • Loading branch information
sarnex authored Feb 26, 2024
1 parent 76ec3f0 commit 7eb9922
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 3 deletions.
28 changes: 27 additions & 1 deletion .github/workflows/sycl-detect-changes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ on:
filters:
description: Matched filters
value: ${{ jobs.need_check.outputs.filters }}
arc_tests:
description: Tests to run on Arc
value: ${{ jobs.need_check.outputs.arc_tests }}

jobs:
need_check:
Expand All @@ -16,6 +19,7 @@ jobs:
timeout-minutes: 3
outputs:
filters: ${{ steps.result.outputs.result }}
arc_tests: ${{ steps.arc_tests.outputs.arc_tests }}
steps:
- name: Check file changes
uses: dorny/paths-filter@0bc4621a3135347011ad047f9ecf449bf72ce2bd
Expand Down Expand Up @@ -57,6 +61,19 @@ jobs:
- devops/scripts/install_drivers.sh
perf-tests:
- sycl/test-e2e/PerformanceTests/**
esimd:
- 'llvm/lib/SYCLLowerIR/ESIMD/**'
- 'llvm/lib/SYCLLowerIR/LowerInvokeSimd.cpp'
- 'llvm/include/llvm/SYCLLowerIR/LowerInvokeSimd.h'
- 'sycl/include/std/experimental/simd.hpp'
- 'sycl/include/std/experimental/simd.hpp'
- 'sycl/include/sycl/ext/intel/esimd.hpp'
- 'sycl/include/sycl/ext/intel/esimd/**'
- 'sycl/include/sycl/ext/intel/esimd.hpp'
- 'sycl/include/sycl/ext/intel/experimental/esimd/**'
- 'sycl/include/sycl/ext/oneapi/experimental/invoke_simd.hpp'
- 'sycl/include/sycl/ext/oneapi/experimental/detail/invoke_simd_types.hpp'
- 'sycl/test-e2e/(ESIMD|InvokeSimd)/**'
- name: Set output
id: result
Expand All @@ -69,6 +86,15 @@ jobs:
return '${{ steps.changes.outputs.changes }}';
}
// Treat everything as changed for huge PRs.
return ["llvm", "llvm_spirv", "clang", "sycl_fusion", "xptifw", "libclc", "sycl", "ci"];
return ["llvm", "llvm_spirv", "clang", "sycl_fusion", "xptifw", "libclc", "sycl", "ci", "esimd"];
- run: echo '${{ steps.result.outputs.result }}'

- name: Set Arc tests
id: arc_tests
run: |
if [ "${{ contains(steps.result.outputs.result, 'esimd') }}" == "true" ]; then
echo 'arc_tests="(ESIMD|InvokeSimd|Matrix)/"' >> "$GITHUB_OUTPUT"
else
echo 'arc_tests="Matrix/"' >> "$GITHUB_OUTPUT"
fi
4 changes: 2 additions & 2 deletions .github/workflows/sycl-linux-precommit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,15 +68,15 @@ jobs:
reset_gpu: true
install_drivers: ${{ contains(needs.detect_changes.outputs.filters, 'drivers') }}
extra_lit_opts: --param gpu-intel-gen12=True
- name: Matrix E2E tests on Intel Arc A-Series Graphics
- name: 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/"}'
env: '{"LIT_FILTER":${{ needs.detect_changes.outputs.arc_tests }} }'
uses: ./.github/workflows/sycl-linux-run-tests.yml
with:
name: ${{ matrix.name }}
Expand Down
7 changes: 7 additions & 0 deletions sycl/test-e2e/ESIMD/lit.local.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,10 @@ config.required_features += ['gpu']

if 'gpu-intel-gen9' in config.available_features and platform.system() == 'Windows':
config.unsupported = True

# We need this to fix failures when run on OCL.
# The current DG2 postcommit job only runs L0 anyway,
# so there's no difference in coverage.
# We should investigate why OCL fails separately.
if 'gpu-intel-dg2' in config.available_features:
config.required_features += ['level_zero']

0 comments on commit 7eb9922

Please sign in to comment.