Migrate towards linux_lob_v2.yml #3820
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: Unit-tests on Linux GPU | |
on: | |
pull_request: | |
push: | |
branches: | |
- nightly | |
- main | |
- release/* | |
workflow_dispatch: | |
jobs: | |
tests: | |
strategy: | |
matrix: | |
python_version: ["3.8", "3.9", "3.10"] | |
cuda_arch_version: ["11.8"] | |
fail-fast: false | |
uses: pytorch/test-infra/.github/workflows/linux_job_v2.yml@main | |
with: | |
runner: linux.g5.4xlarge.nvidia.gpu | |
repository: pytorch/audio | |
gpu-arch-type: cuda | |
gpu-arch-version: ${{ matrix.cuda_arch_version }} | |
timeout: 120 | |
script: | | |
set -ex | |
# Set up Environment Variables | |
export PYTHON_VERSION="${{ matrix.python_version }}" | |
export CU_VERSION="${{ matrix.cuda_arch_version }}" | |
export CUDATOOLKIT="pytorch-cuda=${CU_VERSION}" | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CMD_APPLY_CMVN_SLIDING=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CMD_COMPUTE_FBANK_FEATS=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CMD_COMPUTE_KALDI_PITCH_FEATS=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CMD_COMPUTE_MFCC_FEATS=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_CMD_COMPUTE_SPECTROGRAM_FEATS=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_CUDA_SMALL_MEMORY=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_ON_PYTHON_310=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_TEMPORARY_DISABLED=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_SOX_DECODER=true | |
export TORCHAUDIO_TEST_ALLOW_SKIP_IF_NO_SOX_ENCODER=true | |
# Set CHANNEL | |
if [[(${GITHUB_EVENT_NAME} = 'pull_request' && (${GITHUB_BASE_REF} = 'release'*)) || (${GITHUB_REF} = 'refs/heads/release'*) ]]; then | |
export CHANNEL=test | |
else | |
export CHANNEL=nightly | |
fi | |
echo "::group::Create conda env" | |
# Mark Build Directory Safe | |
git config --global --add safe.directory /__w/audio/audio | |
conda create --quiet -y --prefix ci_env python="${PYTHON_VERSION}" | |
conda activate ./ci_env | |
echo "::endgroup::" | |
echo "::group::Install PyTorch" | |
conda install \ | |
--yes \ | |
--quiet \ | |
-c "pytorch-${CHANNEL}" \ | |
-c nvidia "pytorch-${CHANNEL}"::pytorch[build="*${CU_VERSION}*"] \ | |
"${CUDATOOLKIT}" | |
echo "::endgroup::" | |
echo "::group::Install TorchAudio" | |
conda install --quiet --yes 'cmake>=3.18.0' ninja | |
pip3 install --progress-bar off -v -e . --no-use-pep517 | |
echo "::endgroup::" | |
echo "::group::Build FFmpeg" | |
.github/scripts/ffmpeg/build_gpu.sh | |
echo "::endgroup::" | |
echo "::group::Install other Dependencies" | |
conda install \ | |
--quiet --yes \ | |
-c conda-forge \ | |
-c numba/label/dev \ | |
sox libvorbis 'librosa==0.10.0' parameterized 'requests>=2.20' | |
pip3 install --progress-bar off \ | |
kaldi-io \ | |
SoundFile \ | |
coverage \ | |
pytest \ | |
pytest-cov \ | |
'scipy==1.7.3' \ | |
transformers \ | |
expecttest \ | |
unidecode \ | |
inflect \ | |
Pillow \ | |
sentencepiece \ | |
pytorch-lightning \ | |
'protobuf<4.21.0' \ | |
demucs \ | |
tinytag \ | |
flashlight-text \ | |
git+https://github.com/kpu/kenlm/ \ | |
git+https://github.com/pytorch/fairseq.git@e47a4c8 | |
echo "::endgroup::" | |
echo "::group::Run tests" | |
export PATH="${PWD}/third_party/install/bin/:${PATH}" | |
declare -a args=( | |
'-v' | |
'--cov=torchaudio' | |
"--junitxml=${RUNNER_TEST_RESULTS_DIR}/junit.xml" | |
'--durations' '100' | |
'-k' 'cuda or gpu' | |
) | |
cd test | |
python3 -m torch.utils.collect_env | |
env | grep TORCHAUDIO || true | |
pytest "${args[@]}" torchaudio_unittest | |
coverage html |