diff --git a/.github/actions/llm/download-llm-binary/action.yml b/.github/actions/llm/download-llm-binary/action.yml index ba9f8ddf..c15bfe49 100644 --- a/.github/actions/llm/download-llm-binary/action.yml +++ b/.github/actions/llm/download-llm-binary/action.yml @@ -1,6 +1,11 @@ name: Download LLM binary files description: Download built binary files from github artifact - +inputs: + platform: + description: 'Platforms to built on' + default: 'Windows,Linux' + required: false + type: string runs: using: "composite" steps: @@ -11,14 +16,18 @@ runs: run: | rm -rf python/llm/llm-binary || true mkdir -p python/llm/llm-binary - mv linux-avx2/* python/llm/llm-binary/ - mv linux-avx512/* python/llm/llm-binary/ - mv linux-avxvnni/* python/llm/llm-binary/ - mv linux-avx/* python/llm/llm-binary/ - mv linux-amx/* python/llm/llm-binary/ - mv windows-avx2/* python/llm/llm-binary/ - mv windows-avx-vnni/* python/llm/llm-binary/ - mv windows-avx/* python/llm/llm-binary/ + if ${{contains(inputs.platform, 'Linux')}}; then + mv linux-avx2/* python/llm/llm-binary/ + mv linux-avx512/* python/llm/llm-binary/ + mv linux-avxvnni/* python/llm/llm-binary/ + mv linux-avx/* python/llm/llm-binary/ + mv linux-amx/* python/llm/llm-binary/ + fi + if ${{contains(inputs.platform, 'Windows')}}; then + mv windows-avx2/* python/llm/llm-binary/ + mv windows-avx-vnni/* python/llm/llm-binary/ + mv windows-avx/* python/llm/llm-binary/ + fi rm -rf linux-avx2 || true rm -rf linux-avx512 || true rm -rf linux-avxvnni || true diff --git a/.github/workflows/llm-binary-build.yml b/.github/workflows/llm-binary-build.yml index 6410bb5b..a61bd26e 100644 --- a/.github/workflows/llm-binary-build.yml +++ b/.github/workflows/llm-binary-build.yml @@ -26,6 +26,11 @@ on: default: '' required: false type: string + platform: + description: 'Platforms to built on' + default: '["Windows", "Linux"]' + required: false + type: string workflow_call: inputs: llmcpp-ref: @@ -33,10 +38,16 @@ on: default: '' required: false type: string - + platform: + description: 'Platforms to built on' + default: 'Windows,Linux' + required: false + type: string + # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: check-linux-avxvnni-artifact: + if: ${{contains(inputs.platform, 'Linux')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} @@ -149,6 +160,7 @@ jobs: conda remove -n python311 --all -y check-linux-avx512-artifact: + if: ${{contains(inputs.platform, 'Linux')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} @@ -249,6 +261,7 @@ jobs: conda remove -n python39 --all -y check-linux-amx-artifact: + if: ${{contains(inputs.platform, 'Linux')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} @@ -319,6 +332,7 @@ jobs: conda remove -n python39 --all -y check-windows-avx2-artifact: + if: ${{contains(inputs.platform, 'Windows')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} @@ -363,6 +377,7 @@ jobs: build/Release check-windows-avx-vnni-artifact: + if: ${{contains(inputs.platform, 'Windows')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} @@ -472,6 +487,7 @@ jobs: release check-windows-avx-artifact: + if: ${{contains(inputs.platform, 'Windows')}} runs-on: ubuntu-latest outputs: if-exists: ${{steps.check_artifact.outputs.exists}} diff --git a/.github/workflows/llm-c-evaluation.yml b/.github/workflows/llm-c-evaluation.yml index feba0074..688cae33 100644 --- a/.github/workflows/llm-c-evaluation.yml +++ b/.github/workflows/llm-c-evaluation.yml @@ -34,6 +34,8 @@ on: jobs: llm-cpp-build: uses: ./.github/workflows/llm-binary-build.yml + with: + platform: 'Linux' # Set the testing matrix based on the event (schedule, PR, or manual dispatch) set-matrix: runs-on: ubuntu-latest @@ -110,6 +112,8 @@ jobs: - name: Download llm binary uses: ./.github/actions/llm/download-llm-binary + with: + platform: 'Linux' - name: Run LLM install (all) test uses: ./.github/actions/llm/setup-llm-env diff --git a/.github/workflows/llm-harness-evaluation.yml b/.github/workflows/llm-harness-evaluation.yml index 5b6b7727..b65d3bd5 100644 --- a/.github/workflows/llm-harness-evaluation.yml +++ b/.github/workflows/llm-harness-evaluation.yml @@ -42,6 +42,8 @@ on: jobs: llm-cpp-build: uses: ./.github/workflows/llm-binary-build.yml + with: + platform: 'Linux' # Set the testing matrix based on the event (schedule, PR, or manual dispatch) set-matrix: runs-on: ubuntu-latest @@ -132,6 +134,8 @@ jobs: - name: Download llm binary uses: ./.github/actions/llm/download-llm-binary + with: + platform: 'Linux' - name: Run LLM install (all) test uses: ./.github/actions/llm/setup-llm-env diff --git a/.github/workflows/llm-ppl-evaluation.yml b/.github/workflows/llm-ppl-evaluation.yml index b085f1f1..27e3d1de 100644 --- a/.github/workflows/llm-ppl-evaluation.yml +++ b/.github/workflows/llm-ppl-evaluation.yml @@ -42,6 +42,8 @@ on: jobs: llm-cpp-build: uses: ./.github/workflows/llm-binary-build.yml + with: + platform: 'Linux' set-matrix: runs-on: ubuntu-latest outputs: @@ -128,6 +130,8 @@ jobs: - name: Download llm binary uses: ./.github/actions/llm/download-llm-binary + with: + platform: 'Linux' - name: Run LLM install (all) test uses: ./.github/actions/llm/setup-llm-env diff --git a/.github/workflows/llm_tests_for_stable_version_on_arc.yml b/.github/workflows/llm_tests_for_stable_version_on_arc.yml index 868893de..8522ad2d 100644 --- a/.github/workflows/llm_tests_for_stable_version_on_arc.yml +++ b/.github/workflows/llm_tests_for_stable_version_on_arc.yml @@ -23,7 +23,8 @@ on: jobs: llm-cpp-build: uses: ./.github/workflows/llm-binary-build.yml - + with: + platform: 'Linux' llm-perf-regression-test-on-arc: needs: llm-cpp-build strategy: @@ -60,6 +61,8 @@ jobs: - name: Download llm binary uses: ./.github/actions/llm/download-llm-binary + with: + platform: 'Linux' - name: Run LLM install (all) test uses: ./.github/actions/llm/setup-llm-env