|
18 | 18 | default: "" |
19 | 19 |
|
20 | 20 | jobs: |
21 | | - test_models: |
22 | | - name: "test_models :: ${{ matrix.name }}" |
23 | | - runs-on: ${{ matrix.runs-on }} |
24 | | - strategy: |
25 | | - fail-fast: false |
26 | | - |
27 | | - # Note: these jobs should use persistent runners with local caches. |
28 | | - # Downloading test files (50GB+) without a cache can take 20+ minutes. |
29 | | - matrix: |
30 | | - include: |
31 | | - # CPU |
32 | | - - name: cpu_llvm_task |
33 | | - models-config-file: models_cpu_llvm_task.json |
34 | | - runs-on: |
35 | | - - self-hosted # must come first |
36 | | - - persistent-cache |
37 | | - - Linux |
38 | | - - X64 |
39 | | - |
40 | | - # AMD GPU |
41 | | - - name: amdgpu_rocm_mi250_gfx90a |
42 | | - models-config-file: models_gpu_rocm_gfx90a.json |
43 | | - runs-on: nodai-amdgpu-mi250-x86-64 |
44 | | - - name: amdgpu_rocm_mi300_gfx942 |
45 | | - models-config-file: models_gpu_rocm_gfx942.json |
46 | | - runs-on: nodai-amdgpu-mi300-x86-64 |
47 | | - - name: amdgpu_vulkan |
48 | | - models-config-file: models_gpu_vulkan.json |
49 | | - runs-on: nodai-amdgpu-w7900-x86-64 |
50 | | - |
51 | | - # NVIDIA GPU |
52 | | - # None at the moment. Could maybe use the persistent a100 runners: |
53 | | - # - self-hosted # must come first |
54 | | - # - runner-group=${{ needs.setup.outputs.runner-group }} |
55 | | - # - environment=${{ needs.setup.outputs.runner-env }} |
56 | | - # - a100 |
57 | | - # - os-family=Linux |
58 | | - # (note: would need to plumb the presubmit/postsubmit runner-group through to here too) |
59 | | - env: |
60 | | - PACKAGE_DOWNLOAD_DIR: ${{ github.workspace }}/.packages |
61 | | - IREE_TEST_PATH_EXTENSION: ${{ github.workspace }}/build_tools/pkgci/external_test_suite |
62 | | - MODELS_CONFIG_FILE_PATH: build_tools/pkgci/external_test_suite/${{ matrix.models-config-file }} |
63 | | - VENV_DIR: ${{ github.workspace }}/venv |
64 | | - steps: |
65 | | - - name: Checking out IREE repository |
66 | | - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 |
67 | | - with: |
68 | | - submodules: false |
69 | | - - uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 |
70 | | - with: |
71 | | - # Must match the subset of versions built in pkgci_build_packages. |
72 | | - python-version: "3.11" |
73 | | - - uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 |
74 | | - with: |
75 | | - name: linux_x86_64_release_packages |
76 | | - path: ${{ env.PACKAGE_DOWNLOAD_DIR }} |
77 | | - - name: Setup venv |
78 | | - run: | |
79 | | - ./build_tools/pkgci/setup_venv.py ${VENV_DIR} \ |
80 | | - --artifact-path=${PACKAGE_DOWNLOAD_DIR} \ |
81 | | - --fetch-gh-workflow=${{ inputs.artifact_run_id }} |
82 | | -
|
83 | | - # Out of tree tests |
84 | | - - name: Check out external TestSuite repository |
85 | | - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 |
86 | | - with: |
87 | | - repository: nod-ai/SHARK-TestSuite |
88 | | - ref: 601db0e472600a94ddb69b37d05cd7d4a17f89b2 |
89 | | - path: SHARK-TestSuite |
90 | | - submodules: false |
91 | | - lfs: true |
92 | | - - name: Install external TestSuite Python requirements |
93 | | - run: | |
94 | | - source ${VENV_DIR}/bin/activate |
95 | | - python3 -m pip install -r SHARK-TestSuite/iree_tests/requirements.txt |
96 | | - pip install --no-compile --pre --upgrade -e SHARK-TestSuite/common_tools |
97 | | - - name: Download remote files for real weight model tests |
98 | | - run: | |
99 | | - source ${VENV_DIR}/bin/activate |
100 | | - python SHARK-TestSuite/iree_tests/download_remote_files.py --root-dir iree_tests/pytorch/models |
101 | | - python SHARK-TestSuite/iree_tests/download_remote_files.py --root-dir iree_tests/sharktank |
102 | | -
|
103 | | - - name: Run external tests - models with real weights |
104 | | - if: "matrix.models-config-file != '' && !cancelled()" |
105 | | - run: | |
106 | | - source ${VENV_DIR}/bin/activate |
107 | | - pytest \ |
108 | | - SHARK-TestSuite/iree_tests/pytorch/models \ |
109 | | - SHARK-TestSuite/iree_tests/sharktank \ |
110 | | - -rA \ |
111 | | - -k real_weights \ |
112 | | - --no-skip-tests-missing-files \ |
113 | | - --capture=no \ |
114 | | - --log-cli-level=info \ |
115 | | - --timeout=600 \ |
116 | | - --durations=0 \ |
117 | | - --config-files=${MODELS_CONFIG_FILE_PATH} |
118 | | -
|
119 | 21 | test_regression_suite: |
120 | 22 | name: "test_regression_suite :: ${{ matrix.name }}" |
121 | 23 | runs-on: ${{ matrix.runs-on }} |
|
0 commit comments