Skip to content

Run unit tests on GPUs in CI #1

Run unit tests on GPUs in CI

Run unit tests on GPUs in CI #1

Workflow file for this run

name: GPU tests
on:
push:
branches: [ main ]
pull_request:
workflow_dispatch:
concurrency:
group: gpu-test-${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_number || github.ref }}
cancel-in-progress: true
permissions:
id-token: write
contents: read
defaults:
run:
shell: bash -l -eo pipefail {0}
jobs:
gpu_test:
runs-on: linux.8xlarge.nvidia.gpu
strategy:
matrix:
python-version: ['3.8', '3.9', '3.10', '3.11']
torch-version: ["stable"]
steps:
- name: Check out repo
uses: actions/checkout@v3
- name: Setup conda env
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
miniconda-version: "latest"
activate-environment: test
python-version: ${{ matrix.python-version }}
- name: Update pip
run: python -m pip install --upgrade pip
- name: Install torch nightly
if: ${{ matrix.torch-version == 'nightly' }}
run: python -m pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cu118
- name: Install torch stable
if: ${{ matrix.torch-version == 'stable' }}
run: python -m pip install torch
- name: Install remaining dependencies
run: |
python -m pip install -e ".[dev]"
python -m pip install lm-eval==0.4.*
- name: Run recipe and unit tests with coverage
run: pytest tests --with-integration --cov=. --cov-report=xml --durations=20 -vv
- name: Upload Coverage to Codecov
uses: codecov/codecov-action@v3