Nightly-OnDemand Tests Rolling #76
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Nightly-OnDemand Tests Rolling | |
on: | |
schedule: | |
# GMT+8 21:30 every workday | |
- cron: '30 13 * * 0-4' | |
# GMT+8 0:30 Saturday | |
- cron: '30 16 * * 5' | |
workflow_dispatch: | |
inputs: | |
pytorch: | |
required: false | |
type: string | |
default: 'main' | |
description: Pytorch branch/commit | |
keep_torch_xpu_ops: | |
required: false | |
type: string | |
default: 'false' | |
description: Keep torch-xpu-ops pin. `true` means use pined commit | |
ut: | |
required: false | |
type: string | |
default: 'torch_xpu' | |
description: UT scope. `op_regression,op_regression_dev1,op_extended,op_ut,torch_xpu`. Delimiter is comma | |
triton: | |
required: false | |
type: string | |
default: '' | |
description: Triton commit. Use pytorch pined commit by default | |
suite: | |
required: true | |
type: string | |
default: 'huggingface' | |
description: Dynamo benchmarks test suite. `huggingface,timm_models,torchbench`. Delimiter is comma | |
dt: | |
required: true | |
type: string | |
default: 'float32' | |
description: Data precision of the test. `float32,bfloat16,float16,amp_bf16,amp_fp16`. Delimiter is comma | |
mode: | |
required: true | |
type: string | |
default: 'inference' | |
description: Test mode. `inference,training`. Delimiter is comma | |
scenario: | |
required: true | |
type: string | |
default: 'accuracy' | |
description: Test scenario. `accuracy,performance`. Delimiter is comma | |
model: | |
required: false | |
type: string | |
default: '' | |
description: Model. Will only run this one mode if set | |
python: | |
required: false | |
type: string | |
default: '3.10' | |
description: Python version | |
permissions: read-all | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.sha }}-${{ github.event_name }}-${{ inputs.pytorch }}-${{ inputs.keep_torch_xpu_ops }}-${{ inputs.ut }}-${{ inputs.triton }}-${{ inputs.suite }}-${{ inputs.dt }}-${{ inputs.mode }}-${{ inputs.scenario }}-${{ inputs.model }}-${{ inputs.python }} | |
cancel-in-progress: true | |
jobs: | |
Linux-Nightly-Ondemand-UT-Tests: | |
if: github.event_name == 'schedule' || ${{ inputs.ut_suite }} | |
uses: ./.github/workflows/_linux_ut.yml | |
with: | |
keep_torch_xpu_ops: ${{ github.event_name == 'schedule' && 'false' || inputs.keep_torch_xpu_ops }} | |
ut: ${{ github.event_name == 'schedule' && 'op_regression,op_regression_dev1,op_extended,op_ut,torch_xpu' || inputs.ut }} | |
pytorch: ${{ github.event_name == 'schedule' && 'main' || inputs.pytorch }} | |
python: ${{ github.event_name == 'schedule' && '3.10' || inputs.python }} | |
triton: ${{ github.event_name == 'schedule' && '' || inputs.triton }} | |
driver: rolling | |
runner: linux.idc.xpu | |
Linux-Nightly-Ondemand-E2E-Tests-Rolling: | |
runs-on: linux | |
# Don't run on forked repos | |
if: github.repository_owner == 'intel' | |
timeout-minutes: 3600 | |
env: | |
pytorch: ${{ github.event_name == 'schedule' && 'main' || inputs.pytorch }} | |
keep_torch_xpu_ops: ${{ github.event_name == 'schedule' && 'false' || inputs.keep_torch_xpu_ops }} | |
ut: ${{ github.event_name == 'schedule' && 'op_regression,op_regression_dev1,op_extended,op_ut,torch_xpu' || inputs.ut }} | |
python: ${{ github.event_name == 'schedule' && '3.10' || inputs.python }} | |
NEOReadDebugKeys: 1 | |
DisableScratchPages: 1 | |
outputs: | |
TORCH_BRANCH_ID: ${{ steps.pinned.outputs.TORCH_BRANCH_ID }} | |
TORCH_COMMIT_ID: ${{ steps.pinned.outputs.TORCH_COMMIT_ID }} | |
DRIVER_VERSION: ${{ steps.pinned.outputs.DRIVER_VERSION }} | |
KERNEL_VERSION: ${{ steps.pinned.outputs.KERNEL_VERSION }} | |
BUNDLE_VERSION: ${{ steps.pinned.outputs.BUNDLE_VERSION }} | |
OS_PRETTY_NAME: ${{ steps.pinned.outputs.OS_PRETTY_NAME }} | |
GCC_VERSION: ${{ steps.pinned.outputs.GCC_VERSION }} | |
TORCHBENCH_COMMIT_ID: ${{ steps.pinned.outputs.TORCHBENCH_COMMIT_ID }} | |
TORCHVISION_COMMIT_ID: ${{ steps.pinned.outputs.TORCHVISION_COMMIT_ID }} | |
TORCHAUDIO_COMMIT_ID: ${{ steps.pinned.outputs.TORCHAUDIO_COMMIT_ID }} | |
TRANSFORMERS_VERSION: ${{ steps.pinned.outputs.TRANSFORMERS_VERSION }} | |
TIMM_COMMIT_ID: ${{ steps.pinned.outputs.TIMM_COMMIT_ID }} | |
TRITON_COMMIT_ID: ${{ steps.pinned.outputs.TRITON_COMMIT_ID }} | |
TIMEOUT_MODELS: ${{ steps.summary.outputs.TIMEOUT_MODELS }} | |
steps: | |
- name: Checkout torch-xpu-ops | |
uses: actions/checkout@v4 | |
# On-demand launch | |
- name: OnDemand Test (${{ inputs.suite }} ${{ inputs.dt }} ${{ inputs.mode }} ${{ inputs.scenario }}) | |
if: github.event_name != 'schedule' | |
uses: ./.github/actions/inductor-xpu-e2e-test | |
with: | |
suite: ${{ inputs.suite }} | |
env_prepare: true | |
dt: ${{ inputs.dt }} | |
mode: ${{ inputs.mode }} | |
scenario: ${{ inputs.scenario }} | |
hf_token: ${{ secrets.HUGGING_FACE_HUB_TOKEN }} | |
driver: rolling | |
- name: Prepare ENV | |
if: ${{ inputs.env_prepare }} | |
shell: bash | |
run: | | |
printenv |