1616 description : ' Enable watcher in BH Post commit'
1717 default : false
1818 type : boolean
19+ enable-llmbox-tests :
20+ description : ' Run tests on LLMBox instead of single card (must set runner-label to BH-LLMBox)'
21+ default : false
22+ type : boolean
1923 workflow_dispatch :
2024 inputs :
2125 runner-label :
4246 description : ' Enable watcher in BH Post commit'
4347 default : false
4448 type : boolean
49+ enable-llmbox-tests :
50+ description : ' Run tests on LLMBox instead of single card (must set runner-label to BH-LLMBox)'
51+ default : false
52+ type : boolean
4553 schedule :
4654 - cron : " 0 */4 * * *"
4755 # Pause this since not enough runners to support every commit to main
4856 # push:
4957 # branches: ["main"]
5058
51- run-name : ${{ inputs.enable-watcher == true && 'Blackhole post-commit tests (watcher enabled) ' || 'Blackhole post-commit tests' }}
59+ run-name : ${{ inputs.enable-llmbox-tests == true && 'Blackhole LLMBox tests' || (inputs.enable- watcher == true && 'Blackhole post-commit tests (watcher enabled) ' || 'Blackhole post-commit tests') }}
5260
5361permissions :
5462 actions : read
@@ -60,6 +68,23 @@ permissions:
6068 checks : write
6169
6270jobs :
71+ generate-matrix :
72+ runs-on : ubuntu-latest
73+ outputs :
74+ matrix : ${{ steps.set-matrix.outputs.matrix }}
75+ steps :
76+ - id : set-matrix
77+ run : |
78+ if [ "${{ inputs.enable-llmbox-tests }}" = "true" ]; then
79+ if [ "${{ inputs.runner-label }}" != "BH-LLMBox" ]; then
80+ echo "::warning::LLMBox tests are enabled but runner-label is not set to BH-LLMBox. Current value: ${{ inputs.runner-label }}"
81+ fi
82+ matrix='["BH-LLMBox"]'
83+ else
84+ matrix='["P100", "P150"]'
85+ fi
86+ echo "matrix=$matrix" >> $GITHUB_OUTPUT
87+
6388 build-artifact :
6489 uses : ./.github/workflows/build-artifact.yaml
6590 permissions :
86111 secrets : inherit
87112 with :
88113 arch : " blackhole"
89- timeout : 20
90114 runner-label : ${{ inputs.runner-label || 'BH' }}
91115 docker-image : ${{ needs.build-artifact-profiler.outputs.dev-docker-image }}
92116 build-artifact-name : ${{ needs.build-artifact-profiler.outputs.build-artifact-name }}
@@ -108,7 +132,6 @@ jobs:
108132 with :
109133 arch : blackhole
110134 runner-label : ${{ inputs.runner-label || 'BH' }}
111- timeout : 15
112135 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
113136 build-artifact-name : ${{ needs.build-artifact.outputs.build-artifact-name }}
114137 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
@@ -138,19 +161,16 @@ jobs:
138161 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
139162 enable-watcher : ${{ inputs.enable-watcher || false }}
140163 models-unit-tests :
141- needs : build-artifact
164+ needs : [ build-artifact, generate-matrix]
142165 secrets : inherit
143166 uses : ./.github/workflows/models-post-commit.yaml
144167 strategy :
145168 fail-fast : false
146169 matrix :
147- test-group : [
148- { runner-label: P100 },
149- { runner-label: P150 },
150- ]
170+ test-group : ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
151171 with :
152172 arch : blackhole
153- runner-label : ${{ matrix.test-group.runner-label }}
173+ runner-label : ${{ matrix.test-group }}
154174 timeout : 20
155175 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
156176 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
@@ -160,7 +180,7 @@ jobs:
160180 secrets : inherit
161181 uses : ./.github/workflows/blackhole-demo-tests-impl.yaml
162182 with :
163- runner-label : BH
183+ runner-label : ${{ inputs.runner-label || 'BH' }}
164184 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
165185 build-artifact-name : ${{ needs.build-artifact.outputs.build-artifact-name }}
166186 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
@@ -178,53 +198,70 @@ jobs:
178198 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
179199
180200 ttnn-stress-tests :
181- needs : build-artifact
201+ needs : [ build-artifact, generate-matrix]
182202 secrets : inherit
183203 uses : ./.github/workflows/ttnn-stress-tests-impl.yaml
184204 strategy :
185205 fail-fast : false
186206 matrix :
187- test-group : [
188- { runner-label: P100 },
189- { runner-label: P150 },
190- ]
207+ test-group : ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
191208 with :
192209 arch : blackhole
193- runner-label : ${{ matrix.test-group.runner-label }}
210+ runner-label : ${{ matrix.test-group }}
194211 timeout : 45
195212 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
196213 build-artifact-name : ${{ needs.build-artifact.outputs.build-artifact-name }}
197214 wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
198215 metalium-smoke-tests :
199- needs : build-artifact
216+ needs : [ build-artifact, generate-matrix]
200217 strategy :
201218 fail-fast : false
202219 matrix :
203- platform : [
204- " P100" ,
205- " P150" ,
206- ]
220+ platform : ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
207221 uses : ./.github/workflows/smoke.yaml
208222 with :
209223 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
210224 package-artifact-name : ${{ needs.build-artifact.outputs.packages-artifact-name }}
211225 runner : ${{ matrix.platform }}
212226 product : tt-metalium
213227 ttnn-smoke-tests :
214- needs : build-artifact
228+ needs : [ build-artifact, generate-matrix]
215229 strategy :
216230 fail-fast : false
217231 matrix :
218- platform : [
219- " P100" ,
220- " P150" ,
221- ]
232+ platform : ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
222233 uses : ./.github/workflows/smoke.yaml
223234 with :
224235 docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
225236 package-artifact-name : ${{ needs.build-artifact.outputs.packages-artifact-name }}
226237 runner : ${{ matrix.platform }}
227238 product : tt-nn
239+
240+ # LLMBox-only demo tests
241+ blackhole-llmbox-demo-tests :
242+ needs : build-artifact
243+ if : ${{ inputs.enable-llmbox-tests }}
244+ secrets : inherit
245+ uses : ./.github/workflows/blackhole-llmbox-demo-tests-impl.yaml
246+ with :
247+ runner-label : ${{ inputs.runner-label || 'BH' }}
248+ docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
249+ build-artifact-name : ${{ needs.build-artifact.outputs.build-artifact-name }}
250+ wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
251+
252+ # LLMBox-only fabric tests
253+ blackhole-llmbox-fabric-unit-tests :
254+ needs : build-artifact
255+ if : ${{ inputs.enable-llmbox-tests }}
256+ secrets : inherit
257+ uses : ./.github/workflows/blackhole-llmbox-fabric-build-and-unit-tests.yaml
258+ with :
259+ arch : blackhole
260+ runner-label : ${{ inputs.runner-label || 'BH' }}
261+ docker-image : ${{ needs.build-artifact.outputs.dev-docker-image }}
262+ build-artifact-name : ${{ needs.build-artifact.outputs.build-artifact-name }}
263+ wheel-artifact-name : ${{ needs.build-artifact.outputs.wheel-artifact-name }}
264+
228265# build-and-test-wheels:
229266# uses: Check all-post-commit yaml for directions
230267# secrets: inherit
0 commit comments