@@ -283,18 +283,72 @@ jobs:
283
283
# Test ANE llama
284
284
${CONDA_RUN} sh .ci/scripts/test_ane_static_llama.sh
285
285
286
- test-llama-runner-macos :
287
- name : test-llama-runner-mac
288
- uses : pytorch/test-infra/.github/workflows/macos_job.yml@main
286
+ test-llama-runner-linux :
287
+ # Test Both linux x86 and linux aarch64
288
+ name : test-llama-runner-linux
289
+ uses : pytorch/test-infra/.github/workflows/linux_job_v2.yml@main
290
+ permissions :
291
+ id-token : write
292
+ contents : read
289
293
strategy :
290
294
matrix :
291
295
dtype : [fp32]
292
- mode : [portable, xnnpack+kv+custom, mps, coreml, xnnpack+custom+quantize_kv]
296
+ mode : [portable, xnnpack+custom]
297
+ runner : [linux.2xlarge, linux.arm64.2xlarge]
298
+ docker-image : [executorch-ubuntu-22.04-clang12, executorch-ubuntu-22.04-gcc11-aarch64]
293
299
include :
294
300
- dtype : bf16
295
301
mode : portable
302
+ runner : linux.2xlarge
303
+ docker-image : executorch-ubuntu-22.04-clang12
304
+ - dtype : bf16
305
+ mode : portable
306
+ runner : linux.arm64.2xlarge
307
+ docker-image : executorch-ubuntu-22.04-gcc11-aarch64
296
308
- dtype : bf16
297
309
mode : custom
310
+ runner : linux.arm64.2xlarge
311
+ docker-image : executorch-ubuntu-22.04-gcc11-aarch64
312
+ # Excluding specific runner + docker image combinations that don't make sense:
313
+ # - Excluding the ARM64 gcc image on the x86 runner (linux.2xlarge)
314
+ # - Excluding the x86 clang image on the ARM64 runner (linux.arm64.2xlarge)
315
+ exclude :
316
+ - runner : linux.2xlarge
317
+ docker-image : executorch-ubuntu-22.04-gcc11-aarch64
318
+ - runner : linux.arm64.2xlarge
319
+ docker-image : executorch-ubuntu-22.04-clang12
320
+ fail-fast : false
321
+ with :
322
+ runner : ${{ matrix.runner }}
323
+ docker-image : ${{ matrix.docker-image }}
324
+ submodules : ' true'
325
+ ref : ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}
326
+ timeout : 900
327
+ script : |
328
+ # The generic Linux job chooses to use base env, not the one setup by the image
329
+ CONDA_ENV=$(conda env list --json | jq -r ".envs | .[-1]")
330
+ conda activate "${CONDA_ENV}"
331
+
332
+ DTYPE=${{ matrix.dtype }}
333
+ BUILD_TOOL="cmake"
334
+ MODE=${{ matrix.mode }}
335
+ ARTIFACTS_DIR_NAME="artifacts-to-be-uploaded/${DTYPE}-${MODE}"
336
+ ARTIFACTS_DIR_NAME="${ARTIFACTS_DIR_NAME/+/-}"
337
+
338
+ # Setup executorch
339
+ PYTHON_EXECUTABLE=python bash .ci/scripts/setup-linux.sh --build-tool "${BUILD_TOOL}"
340
+ # Install requirements for export_llama
341
+ PYTHON_EXECUTABLE=python bash examples/models/llama/install_requirements.sh
342
+ # Test llama2
343
+ PYTHON_EXECUTABLE=python bash .ci/scripts/test_llama.sh -model stories110M -build_tool "${BUILD_TOOL}" -dtype "${DTYPE}" -mode "${MODE}" -upload "${ARTIFACTS_DIR_NAME}"
344
+
345
+ test-llama-runner-macos :
346
+ name : test-llama-runner-mac
347
+ uses : pytorch/test-infra/.github/workflows/macos_job.yml@main
348
+ strategy :
349
+ matrix :
350
+ dtype : [fp32]
351
+ mode : [mps, coreml, xnnpack+custom+quantize_kv]
298
352
fail-fast : false
299
353
with :
300
354
runner : macos-m1-stable
0 commit comments