|
1 | | -name: Fast mps tests on main |
2 | | - |
3 | | -on: |
4 | | - push: |
5 | | - branches: |
6 | | - - main |
7 | | - paths: |
8 | | - - "src/diffusers/**.py" |
9 | | - - "tests/**.py" |
10 | | - |
11 | | -env: |
12 | | - DIFFUSERS_IS_CI: yes |
13 | | - HF_HOME: /mnt/cache |
14 | | - OMP_NUM_THREADS: 8 |
15 | | - MKL_NUM_THREADS: 8 |
16 | | - HF_HUB_ENABLE_HF_TRANSFER: 1 |
17 | | - PYTEST_TIMEOUT: 600 |
18 | | - RUN_SLOW: no |
19 | | - HF_TOKEN: ${{ secrets.HF_TOKEN }} |
20 | | - PYTORCH_MPS_HIGH_WATERMARK_RATIO: 0.0 |
21 | | - |
22 | | -concurrency: |
23 | | - group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} |
24 | | - cancel-in-progress: true |
25 | | - |
26 | | -jobs: |
27 | | - run_fast_tests_apple_m1: |
28 | | - strategy: |
29 | | - fail-fast: false |
30 | | - matrix: |
31 | | - config: |
32 | | - - name: Fast Pipelines MPS tests |
33 | | - framework: pytorch_pipelines |
34 | | - runner: macos-13-xlarge |
35 | | - report: torch_mps_pipelines |
36 | | - - name: Fast Models MPS tests |
37 | | - framework: pytorch_models |
38 | | - runner: macos-13-xlarge |
39 | | - report: torch_mps_models |
40 | | - - name: Fast Schedulers MPS tests |
41 | | - framework: pytorch_schedulers |
42 | | - runner: macos-13-xlarge |
43 | | - report: torch_mps_schedulers |
44 | | - - name: Fast Others MPS tests |
45 | | - framework: pytorch_others |
46 | | - runner: macos-13-xlarge |
47 | | - report: torch_mps_others |
48 | | - - name: Fast Single File MPS tests |
49 | | - framework: pytorch_single_file |
50 | | - runner: macos-13-xlarge |
51 | | - report: torch_mps_single_file |
52 | | - - name: Fast Lora MPS tests |
53 | | - framework: pytorch_lora |
54 | | - runner: macos-13-xlarge |
55 | | - report: torch_mps_lora |
56 | | - - name: Fast Quantization MPS tests |
57 | | - framework: pytorch_quantization |
58 | | - runner: macos-13-xlarge |
59 | | - report: torch_mps_quantization |
60 | | - |
61 | | - name: ${{ matrix.config.name }} |
62 | | - |
63 | | - runs-on: ${{ matrix.config.runner }} |
64 | | - |
65 | | - defaults: |
66 | | - run: |
67 | | - shell: arch -arch arm64 bash {0} |
68 | | - |
69 | | - steps: |
70 | | - - name: Checkout diffusers |
71 | | - uses: actions/checkout@v3 |
72 | | - with: |
73 | | - fetch-depth: 2 |
74 | | - |
75 | | - - name: Clean checkout |
76 | | - run: | |
77 | | - git clean -fxd |
78 | | -
|
79 | | - - name: Setup miniconda |
80 | | - uses: ./.github/actions/setup-miniconda |
81 | | - with: |
82 | | - python-version: 3.9 |
83 | | - |
84 | | - - name: Install dependencies |
85 | | - run: | |
86 | | - ${CONDA_RUN} python -m pip install --upgrade pip uv |
87 | | - ${CONDA_RUN} python -m uv pip install -e ".[quality,test]" |
88 | | - ${CONDA_RUN} python -m uv pip install hf_transfer |
89 | | - ${CONDA_RUN} python -m uv pip install peft |
90 | | - ${CONDA_RUN} python -m uv pip install bitsandbytes |
91 | | - ${CONDA_RUN} python -m uv pip install torch torchvision torchaudio |
92 | | - ${CONDA_RUN} python -m uv pip install accelerate@git+https://github.com/huggingface/accelerate.git |
93 | | - ${CONDA_RUN} python -m uv pip install transformers --upgrade |
94 | | -
|
95 | | - - name: Environment |
96 | | - shell: arch -arch arm64 bash {0} |
97 | | - run: | |
98 | | - ${CONDA_RUN} python utils/print_env.py |
99 | | -
|
100 | | - - name: Run fast PyTorch Pipeline MPS tests |
101 | | - if: ${{ matrix.config.framework == 'pytorch_pipelines' }} |
102 | | - run: | |
103 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx" \ |
104 | | - --make-reports=tests_${{ matrix.config.report }} \ |
105 | | - tests/pipelines/ |
106 | | -
|
107 | | - - name: Run fast PyTorch Models MPS tests |
108 | | - if: ${{ matrix.config.framework == 'pytorch_models' }} |
109 | | - run: | |
110 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx and not Dependency" \ |
111 | | - --make-reports=tests_${{ matrix.config.report }} \ |
112 | | - tests/models/ |
113 | | -
|
114 | | - - name: Run fast PyTorch Schedulers MPS tests |
115 | | - if: ${{ matrix.config.framework == 'pytorch_schedulers' }} |
116 | | - run: | |
117 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx and not Dependency" \ |
118 | | - --make-reports=tests_${{ matrix.config.report }} \ |
119 | | - tests/schedulers/ |
120 | | -
|
121 | | - - name: Run fast PyTorch Others MPS tests |
122 | | - if: ${{ matrix.config.framework == 'pytorch_others' }} |
123 | | - run: | |
124 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
125 | | - --make-reports=tests_${{ matrix.config.report }} \ |
126 | | - tests/others/ |
127 | | -
|
128 | | - - name: Run fast PyTorch Single File MPS tests |
129 | | - if: ${{ matrix.config.framework == 'pytorch_single_file' }} |
130 | | - run: | |
131 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
132 | | - --make-reports=tests_${{ matrix.config.report }} \ |
133 | | - tests/single_file/ |
134 | | -
|
135 | | - - name: Run fast PyTorch Lora MPS tests |
136 | | - if: ${{ matrix.config.framework == 'pytorch_lora' }} |
137 | | - run: | |
138 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
139 | | - --make-reports=tests_${{ matrix.config.report }} \ |
140 | | - tests/lora/ |
141 | | -
|
142 | | - - name: Run fast PyTorch Quantization MPS tests |
143 | | - if: ${{ matrix.config.framework == 'pytorch_quantization' }} |
144 | | - run: | |
145 | | - ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
146 | | - --make-reports=tests_${{ matrix.config.report }} \ |
147 | | - tests/quantization/ |
148 | | -
|
149 | | - - name: Failure short reports |
150 | | - if: ${{ failure() }} |
151 | | - run: cat reports/tests_${{ matrix.config.report }}_failures_short.txt |
152 | | - |
153 | | - - name: Test suite reports artifacts |
154 | | - if: ${{ always() }} |
155 | | - uses: actions/upload-artifact@v4 |
156 | | - with: |
157 | | - name: pr_${{ matrix.config.framework }}_${{ matrix.config.report }}_test_reports |
158 | | - path: reports |
| 1 | +# name: Fast mps tests on main |
| 2 | + |
| 3 | +# on: |
| 4 | +# push: |
| 5 | +# branches: |
| 6 | +# - main |
| 7 | +# paths: |
| 8 | +# - "src/diffusers/**.py" |
| 9 | +# - "tests/**.py" |
| 10 | + |
| 11 | +# env: |
| 12 | +# DIFFUSERS_IS_CI: yes |
| 13 | +# HF_HOME: /mnt/cache |
| 14 | +# OMP_NUM_THREADS: 8 |
| 15 | +# MKL_NUM_THREADS: 8 |
| 16 | +# HF_HUB_ENABLE_HF_TRANSFER: 1 |
| 17 | +# PYTEST_TIMEOUT: 600 |
| 18 | +# RUN_SLOW: no |
| 19 | +# HF_TOKEN: ${{ secrets.HF_TOKEN }} |
| 20 | +# PYTORCH_MPS_HIGH_WATERMARK_RATIO: 0.0 |
| 21 | + |
| 22 | +# concurrency: |
| 23 | +# group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} |
| 24 | +# cancel-in-progress: true |
| 25 | + |
| 26 | +# jobs: |
| 27 | +# run_fast_tests_apple_m1: |
| 28 | +# strategy: |
| 29 | +# fail-fast: false |
| 30 | +# matrix: |
| 31 | +# config: |
| 32 | +# - name: Fast Pipelines MPS tests |
| 33 | +# framework: pytorch_pipelines |
| 34 | +# runner: macos-13-xlarge |
| 35 | +# report: torch_mps_pipelines |
| 36 | +# - name: Fast Models MPS tests |
| 37 | +# framework: pytorch_models |
| 38 | +# runner: macos-13-xlarge |
| 39 | +# report: torch_mps_models |
| 40 | +# - name: Fast Schedulers MPS tests |
| 41 | +# framework: pytorch_schedulers |
| 42 | +# runner: macos-13-xlarge |
| 43 | +# report: torch_mps_schedulers |
| 44 | +# - name: Fast Others MPS tests |
| 45 | +# framework: pytorch_others |
| 46 | +# runner: macos-13-xlarge |
| 47 | +# report: torch_mps_others |
| 48 | +# - name: Fast Single File MPS tests |
| 49 | +# framework: pytorch_single_file |
| 50 | +# runner: macos-13-xlarge |
| 51 | +# report: torch_mps_single_file |
| 52 | +# - name: Fast Lora MPS tests |
| 53 | +# framework: pytorch_lora |
| 54 | +# runner: macos-13-xlarge |
| 55 | +# report: torch_mps_lora |
| 56 | +# - name: Fast Quantization MPS tests |
| 57 | +# framework: pytorch_quantization |
| 58 | +# runner: macos-13-xlarge |
| 59 | +# report: torch_mps_quantization |
| 60 | + |
| 61 | +# name: ${{ matrix.config.name }} |
| 62 | + |
| 63 | +# runs-on: ${{ matrix.config.runner }} |
| 64 | + |
| 65 | +# defaults: |
| 66 | +# run: |
| 67 | +# shell: arch -arch arm64 bash {0} |
| 68 | + |
| 69 | +# steps: |
| 70 | +# - name: Checkout diffusers |
| 71 | +# uses: actions/checkout@v3 |
| 72 | +# with: |
| 73 | +# fetch-depth: 2 |
| 74 | + |
| 75 | +# - name: Clean checkout |
| 76 | +# run: | |
| 77 | +# git clean -fxd |
| 78 | + |
| 79 | +# - name: Setup miniconda |
| 80 | +# uses: ./.github/actions/setup-miniconda |
| 81 | +# with: |
| 82 | +# python-version: 3.9 |
| 83 | + |
| 84 | +# - name: Install dependencies |
| 85 | +# run: | |
| 86 | +# ${CONDA_RUN} python -m pip install --upgrade pip uv |
| 87 | +# ${CONDA_RUN} python -m uv pip install -e ".[quality,test]" |
| 88 | +# ${CONDA_RUN} python -m uv pip install hf_transfer |
| 89 | +# ${CONDA_RUN} python -m uv pip install peft |
| 90 | +# ${CONDA_RUN} python -m uv pip install bitsandbytes |
| 91 | +# ${CONDA_RUN} python -m uv pip install torch torchvision torchaudio |
| 92 | +# ${CONDA_RUN} python -m uv pip install accelerate@git+https://github.com/huggingface/accelerate.git |
| 93 | +# ${CONDA_RUN} python -m uv pip install transformers --upgrade |
| 94 | + |
| 95 | +# - name: Environment |
| 96 | +# shell: arch -arch arm64 bash {0} |
| 97 | +# run: | |
| 98 | +# ${CONDA_RUN} python utils/print_env.py |
| 99 | + |
| 100 | +# - name: Run fast PyTorch Pipeline MPS tests |
| 101 | +# if: ${{ matrix.config.framework == 'pytorch_pipelines' }} |
| 102 | +# run: | |
| 103 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx" \ |
| 104 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 105 | +# tests/pipelines/ |
| 106 | + |
| 107 | +# - name: Run fast PyTorch Models MPS tests |
| 108 | +# if: ${{ matrix.config.framework == 'pytorch_models' }} |
| 109 | +# run: | |
| 110 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx and not Dependency" \ |
| 111 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 112 | +# tests/models/ |
| 113 | + |
| 114 | +# - name: Run fast PyTorch Schedulers MPS tests |
| 115 | +# if: ${{ matrix.config.framework == 'pytorch_schedulers' }} |
| 116 | +# run: | |
| 117 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v -k "not Flax and not Onnx and not Dependency" \ |
| 118 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 119 | +# tests/schedulers/ |
| 120 | + |
| 121 | +# - name: Run fast PyTorch Others MPS tests |
| 122 | +# if: ${{ matrix.config.framework == 'pytorch_others' }} |
| 123 | +# run: | |
| 124 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
| 125 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 126 | +# tests/others/ |
| 127 | + |
| 128 | +# - name: Run fast PyTorch Single File MPS tests |
| 129 | +# if: ${{ matrix.config.framework == 'pytorch_single_file' }} |
| 130 | +# run: | |
| 131 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
| 132 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 133 | +# tests/single_file/ |
| 134 | + |
| 135 | +# - name: Run fast PyTorch Lora MPS tests |
| 136 | +# if: ${{ matrix.config.framework == 'pytorch_lora' }} |
| 137 | +# run: | |
| 138 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
| 139 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 140 | +# tests/lora/ |
| 141 | + |
| 142 | +# - name: Run fast PyTorch Quantization MPS tests |
| 143 | +# if: ${{ matrix.config.framework == 'pytorch_quantization' }} |
| 144 | +# run: | |
| 145 | +# ${CONDA_RUN} python -m pytest -n 0 -s -v \ |
| 146 | +# --make-reports=tests_${{ matrix.config.report }} \ |
| 147 | +# tests/quantization/ |
| 148 | + |
| 149 | +# - name: Failure short reports |
| 150 | +# if: ${{ failure() }} |
| 151 | +# run: cat reports/tests_${{ matrix.config.report }}_failures_short.txt |
| 152 | + |
| 153 | +# - name: Test suite reports artifacts |
| 154 | +# if: ${{ always() }} |
| 155 | +# uses: actions/upload-artifact@v4 |
| 156 | +# with: |
| 157 | +# name: pr_${{ matrix.config.framework }}_${{ matrix.config.report }}_test_reports |
| 158 | +# path: reports |
0 commit comments