From c9c37dcc4dfeb58eb72cf24b9ea5cfd9b593fd99 Mon Sep 17 00:00:00 2001 From: Frank Lee Date: Thu, 14 Jul 2022 16:45:17 +0800 Subject: [PATCH] [workflow] updated pytorch compatibility test (#1311) --- .github/workflows/compatibility_test.yml | 44 ++++++++++++++---------- 1 file changed, 26 insertions(+), 18 deletions(-) diff --git a/.github/workflows/compatibility_test.yml b/.github/workflows/compatibility_test.yml index 08aa5f1a9..a6e8f5ea6 100644 --- a/.github/workflows/compatibility_test.yml +++ b/.github/workflows/compatibility_test.yml @@ -3,18 +3,14 @@ name: Compatibility Test on: workflow_dispatch: inputs: - version: - type: choice - description: version for testing - default: 'all' + torch_version: + type: string + description: torch version, separated by comma + required: true + cuda_version: + type: string + description: cuda version, separated by comma required: true - options: - - all - - pytorch-cuda:1.9.0-11.1.1 # python 3.8 - - pytorch-cuda:1.8.1-11.1.1 # python 3.8 - - pytorch-cuda:1.7.1-11.0.3 # python 3.8 - - pytorch-cuda:1.6.0-10.2 # python 3.6 - jobs: matrix_preparation: @@ -24,12 +20,25 @@ jobs: matrix: ${{ steps.set-matrix.outputs.matrix }} steps: - id: set-matrix + env: + TORCH_VERSIONS: ${{ inputs.torch_version }} + CUDA_VERSIONS: ${{ inputs.cuda_version }} run: | - [ "${{github.event.inputs.version}}" != "" ] && matrix="[\"frankleeeee/${{github.event.inputs.version}}\"]" - [ "${{github.event.inputs.version}}" == "" ] || [ "${{github.event.inputs.version}}" == "all" ] && \ - matrix="[\"frankleeeee/pytorch-cuda:1.9.0-11.1.1\", \"frankleeeee/pytorch-cuda:1.8.1-11.1.1\", \"frankleeeee/pytorch-cuda:1.7.1-11.0.3\", \"frankleeeee/pytorch-cuda:1.6.0-10.2\"]" - echo $matrix - echo "::set-output name=matrix::{\"container\":$(echo $matrix)}" + IFS=',' + DOCKER_IMAGE=() + + for tv in $TORCH_VERSIONS + do + for cv in $CUDA_VERSIONS + do + DOCKER_IMAGE+=("\"hpcaitech/pytorch-cuda:${tv}-${cv}\"") + done + done + + container=$( IFS=',' ; echo "${DOCKER_IMAGE[*]}" ) + container="[${container}]" + echo "$container" + echo "::set-output name=matrix::{\"container\":$(echo "$container")}" build: name: Test for PyTorch Compatibility @@ -46,14 +55,13 @@ jobs: steps: - name: Install dependencies run: | - pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple pip install -U pip setuptools wheel --user - uses: actions/checkout@v2 - name: Install Colossal-AI run: | pip install -r requirements/requirements.txt - pip install -r requirements/requirements-test.txt pip install -v --no-cache-dir . + pip install -r requirements/requirements-test.txt - name: Unit Testing run: | PYTHONPATH=$PWD pytest tests