diff --git a/.github/workflows/sycl-detect-changes.yml b/.github/workflows/sycl-detect-changes.yml index bb34ca033e02e..3f9ed1bf5d482 100644 --- a/.github/workflows/sycl-detect-changes.yml +++ b/.github/workflows/sycl-detect-changes.yml @@ -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: @@ -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 @@ -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 @@ -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 diff --git a/.github/workflows/sycl-linux-precommit.yml b/.github/workflows/sycl-linux-precommit.yml index eb3b319cf14f9..206e956dae683 100644 --- a/.github/workflows/sycl-linux-precommit.yml +++ b/.github/workflows/sycl-linux-precommit.yml @@ -68,7 +68,7 @@ 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 @@ -76,7 +76,7 @@ jobs: 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 }} diff --git a/sycl/test-e2e/ESIMD/lit.local.cfg b/sycl/test-e2e/ESIMD/lit.local.cfg index 6c58294763cf8..239c2e46e691b 100644 --- a/sycl/test-e2e/ESIMD/lit.local.cfg +++ b/sycl/test-e2e/ESIMD/lit.local.cfg @@ -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']