From ff18195df91646ff2a35a7dbe4ff8a6ab87b7934 Mon Sep 17 00:00:00 2001 From: Eli Uriegas Date: Wed, 8 Sep 2021 14:40:03 -0700 Subject: [PATCH] .github: Upgrade windows CUDA 10.1 -> 10.2 (#64658) Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/64658 We don't release 10.1 anymore so let's bump to 10.2 Signed-off-by: Eli Uriegas Test Plan: Imported from OSS Reviewed By: malfet, janeyx99 Differential Revision: D30811178 Pulled By: seemethere fbshipit-source-id: c504ebf7f0d4c0d6229319d774f808b4ba0facd9 --- .circleci/scripts/windows_cuda_install.sh | 37 ++++++++++--------- .circleci/scripts/windows_cudnn_install.sh | 43 +++++++++++++--------- .github/generated-ciflow-ruleset.json | 8 ++-- .github/scripts/generate_ci_workflows.py | 4 +- ...3.yml => generated-win-vs2019-cuda10.2-py3.yml} | 14 +++---- 5 files changed, 57 insertions(+), 49 deletions(-) rename .github/workflows/{generated-win-vs2019-cuda10.1-py3.yml => generated-win-vs2019-cuda10.2-py3.yml} (97%) diff --git a/.circleci/scripts/windows_cuda_install.sh b/.circleci/scripts/windows_cuda_install.sh index f2d5eb6..c16a11a 100644 --- a/.circleci/scripts/windows_cuda_install.sh +++ b/.circleci/scripts/windows_cuda_install.sh @@ -3,31 +3,32 @@ set -eux -o pipefail cuda_major_version=${CUDA_VERSION%.*} -if [[ "$cuda_major_version" == "10" ]]; then - cuda_installer_name="cuda_10.1.243_426.00_win10" - msbuild_project_dir="CUDAVisualStudioIntegration/extras/visual_studio_integration/MSBuildExtensions" - cuda_install_packages="nvcc_10.1 cuobjdump_10.1 nvprune_10.1 cupti_10.1 cublas_10.1 cublas_dev_10.1 cudart_10.1 cufft_10.1 cufft_dev_10.1 curand_10.1 curand_dev_10.1 cusolver_10.1 cusolver_dev_10.1 cusparse_10.1 cusparse_dev_10.1 nvgraph_10.1 nvgraph_dev_10.1 npp_10.1 npp_dev_10.1 nvrtc_10.1 nvrtc_dev_10.1 nvml_dev_10.1" -elif [[ "$cuda_major_version" == "11" ]]; then - if [[ "${CUDA_VERSION}" == "11.1" ]]; then +case ${CUDA_VERSION} in + 10.1) + cuda_installer_name="cuda_10.1.243_426.00_win10" + msbuild_project_dir="CUDAVisualStudioIntegration/extras/visual_studio_integration/MSBuildExtensions" + cuda_install_packages="nvcc_10.1 cuobjdump_10.1 nvprune_10.1 cupti_10.1 cublas_10.1 cublas_dev_10.1 cudart_10.1 cufft_10.1 cufft_dev_10.1 curand_10.1 curand_dev_10.1 cusolver_10.1 cusolver_dev_10.1 cusparse_10.1 cusparse_dev_10.1 nvgraph_10.1 nvgraph_dev_10.1 npp_10.1 npp_dev_10.1 nvrtc_10.1 nvrtc_dev_10.1 nvml_dev_10.1" + ;; + 10.2) + cuda_installer_name="cuda_10.2.89_441.22_win10" + msbuild_project_dir="CUDAVisualStudioIntegration/extras/visual_studio_integration/MSBuildExtensions" + cuda_install_packages="nvcc_10.2 cuobjdump_10.2 nvprune_10.2 cupti_10.2 cublas_10.2 cublas_dev_10.2 cudart_10.2 cufft_10.2 cufft_dev_10.2 curand_10.2 curand_dev_10.2 cusolver_10.2 cusolver_dev_10.2 cusparse_10.2 cusparse_dev_10.2 nvgraph_10.2 nvgraph_dev_10.2 npp_10.2 npp_dev_10.2 nvrtc_10.2 nvrtc_dev_10.2 nvml_dev_10.2" + ;; + 11.1) cuda_installer_name="cuda_11.1.0_456.43_win10" msbuild_project_dir="visual_studio_integration/CUDAVisualStudioIntegration/extras/visual_studio_integration/MSBuildExtensions" cuda_install_packages="nvcc_11.1 cuobjdump_11.1 nvprune_11.1 nvprof_11.1 cupti_11.1 cublas_11.1 cublas_dev_11.1 cudart_11.1 cufft_11.1 cufft_dev_11.1 curand_11.1 curand_dev_11.1 cusolver_11.1 cusolver_dev_11.1 cusparse_11.1 cusparse_dev_11.1 npp_11.1 npp_dev_11.1 nvrtc_11.1 nvrtc_dev_11.1 nvml_dev_11.1" - elif [[ "${CUDA_VERSION}" == "11.3" ]]; then + ;; + 11.3) cuda_installer_name="cuda_11.3.0_465.89_win10" msbuild_project_dir="visual_studio_integration/CUDAVisualStudioIntegration/extras/visual_studio_integration/MSBuildExtensions" cuda_install_packages="thrust_11.3 nvcc_11.3 cuobjdump_11.3 nvprune_11.3 nvprof_11.3 cupti_11.3 cublas_11.3 cublas_dev_11.3 cudart_11.3 cufft_11.3 cufft_dev_11.3 curand_11.3 curand_dev_11.3 cusolver_11.3 cusolver_dev_11.3 cusparse_11.3 cusparse_dev_11.3 npp_11.3 npp_dev_11.3 nvrtc_11.3 nvrtc_dev_11.3 nvml_dev_11.3" - else - echo "This should not happen! ABORT." + ;; + *) + echo "CUDA_VERSION $CUDA_VERSION is not supported yet" exit 1 - fi -else - echo "CUDA_VERSION $CUDA_VERSION is not supported yet" - exit 1 -fi - -if [[ "$cuda_major_version" == "11" && "${JOB_EXECUTOR:-}" == "windows-with-nvidia-gpu" ]]; then - cuda_install_packages="${cuda_install_packages} Display.Driver" -fi + ;; +esac cuda_installer_link="https://ossci-windows.s3.amazonaws.com/${cuda_installer_name}.exe" diff --git a/.circleci/scripts/windows_cudnn_install.sh b/.circleci/scripts/windows_cudnn_install.sh index a389fc4..224cb3a 100644 --- a/.circleci/scripts/windows_cudnn_install.sh +++ b/.circleci/scripts/windows_cudnn_install.sh @@ -1,29 +1,36 @@ #!/bin/bash set -eux -o pipefail -cuda_major_version=${CUDA_VERSION%.*} +# This is typically blank but for CUDA 10* it'll be set to 10 +windows_version_qualifier="" -if [[ "$cuda_major_version" == "10" ]]; then - cudnn_installer_name="cudnn-${CUDA_VERSION}-windows10-x64-v7.6.4.38" -elif [[ "$cuda_major_version" == "11" ]]; then - if [[ "${CUDA_VERSION}" == "11.1" ]]; then - cudnn_installer_name="cudnn-${CUDA_VERSION}-windows-x64-v8.0.5.39" - elif [[ "${CUDA_VERSION}" == "11.3" ]]; then - cudnn_installer_name="cudnn-${CUDA_VERSION}-windows-x64-v8.2.0.53" - else - echo "This should not happen! ABORT." +case ${CUDA_VERSION} in + 10.1) + archive_version="v7.6.4.38" + windows_version_qualifier="10" + ;; + 10.2) + archive_version="v7.6.5.32" + windows_version_qualifier="10" + ;; + 11.1) + archive_version="v8.0.5.39" + ;; + 11.3) + archive_version="v8.2.0.53" + ;; + *) + echo "CUDA_VERSION: ${CUDA_VERSION} not supported yet" exit 1 - fi -else - echo "CUDNN for CUDA_VERSION $CUDA_VERSION is not supported yet" - exit 1 -fi + ;; +esac -cudnn_installer_link="https://ossci-windows.s3.amazonaws.com/${cudnn_installer_name}.zip" +cudnn_installer_name="cudnn_installer.zip" +cudnn_installer_link="https://ossci-windows.s3.amazonaws.com/cudnn-${CUDA_VERSION}-windows${windows_version_qualifier}-x64-${archive_version}.zip" cudnn_install_folder="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v${CUDA_VERSION}/" -curl --retry 3 -O "$cudnn_installer_link" -7z x "${cudnn_installer_name}.zip" -ocudnn +curl --retry 3 -o "${cudnn_installer_name}" "$cudnn_installer_link" +7z x "${cudnn_installer_name}" -ocudnn # shellcheck recommends to use '${var:?}/*' to avoid potentially expanding to '/*' # Remove all of the directories before attempting to copy files rm -rf "${cudnn_install_folder:?}/*" diff --git a/.github/generated-ciflow-ruleset.json b/.github/generated-ciflow-ruleset.json index bcfcddc..4ffb019 100644 --- a/.github/generated-ciflow-ruleset.json +++ b/.github/generated-ciflow-ruleset.json @@ -18,7 +18,7 @@ "periodic-win-vs2019-cuda11.1-py3", "puretorch-linux-xenial-py3.6-gcc5.4", "win-vs2019-cpu-py3", - "win-vs2019-cuda10.1-py3", + "win-vs2019-cuda10.2-py3", "win-vs2019-cuda11.3-py3" ], "ciflow/bazel": [ @@ -46,7 +46,7 @@ "periodic-libtorch-linux-xenial-cuda11.1-py3.6-gcc7", "periodic-linux-xenial-cuda11.1-py3.6-gcc7", "periodic-win-vs2019-cuda11.1-py3", - "win-vs2019-cuda10.1-py3", + "win-vs2019-cuda10.2-py3", "win-vs2019-cuda11.3-py3" ], "ciflow/default": [ @@ -56,7 +56,7 @@ "linux-xenial-py3.6-gcc5.4", "linux-xenial-py3.6-gcc7-bazel-test", "win-vs2019-cpu-py3", - "win-vs2019-cuda10.1-py3" + "win-vs2019-cuda10.2-py3" ], "ciflow/libtorch": [ "libtorch-linux-xenial-cuda10.2-py3.6-gcc7", @@ -94,7 +94,7 @@ "ciflow/win": [ "periodic-win-vs2019-cuda11.1-py3", "win-vs2019-cpu-py3", - "win-vs2019-cuda10.1-py3", + "win-vs2019-cuda10.2-py3", "win-vs2019-cuda11.3-py3" ], "ciflow/xla": [ diff --git a/.github/scripts/generate_ci_workflows.py b/.github/scripts/generate_ci_workflows.py index 2bdd72d..5881151 100755 --- a/.github/scripts/generate_ci_workflows.py +++ b/.github/scripts/generate_ci_workflows.py @@ -224,8 +224,8 @@ WINDOWS_WORKFLOWS = [ ), CIWorkflow( arch="windows", - build_environment="win-vs2019-cuda10.1-py3", - cuda_version="10.1", + build_environment="win-vs2019-cuda10.2-py3", + cuda_version="10.2", test_runner_type=WINDOWS_CUDA_TEST_RUNNER, on_pull_request=True, only_run_smoke_tests_on_pull_request=True, diff --git a/.github/workflows/generated-win-vs2019-cuda10.1-py3.yml b/.github/workflows/generated-win-vs2019-cuda10.2-py3.yml similarity index 97% rename from .github/workflows/generated-win-vs2019-cuda10.1-py3.yml rename to .github/workflows/generated-win-vs2019-cuda10.2-py3.yml index bd69681..00b1ad9 100644 --- a/.github/workflows/generated-win-vs2019-cuda10.1-py3.yml +++ b/.github/workflows/generated-win-vs2019-cuda10.2-py3.yml @@ -1,7 +1,7 @@ # @generated DO NOT EDIT MANUALLY # Template is at: .github/templates/windows_ci_workflow.yml.j2 # Generation script: .github/scripts/generate_ci_workflows.py -name: win-vs2019-cuda10.1-py3 +name: win-vs2019-cuda10.2-py3 on: pull_request: @@ -13,9 +13,9 @@ on: workflow_dispatch: env: - BUILD_ENVIRONMENT: win-vs2019-cuda10.1-py3 + BUILD_ENVIRONMENT: win-vs2019-cuda10.2-py3 BUILD_WHEEL: 1 - CUDA_VERSION: "10.1" + CUDA_VERSION: "10.2" IN_CI: 1 INSTALL_WINDOWS_SDK: 1 PYTHON_VERSION: "3.8" @@ -31,7 +31,7 @@ env: USE_CUDA: 1 concurrency: - group: win-vs2019-cuda10.1-py3-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }} + group: win-vs2019-cuda10.2-py3-${{ github.event.pull_request.number || github.sha }}-${{ github.event_name == 'workflow_dispatch' }} cancel-in-progress: true jobs: @@ -49,7 +49,7 @@ jobs: working-directory: pytorch-${{ github.run_id }} needs: [ciflow_should_run] env: - JOB_BASE_NAME: win-vs2019-cuda10.1-py3-build + JOB_BASE_NAME: win-vs2019-cuda10.2-py3-build http_proxy: "http://internal-tf-lb-20210727220640487900000002-835786077.us-east-1.elb.amazonaws.com:3128" https_proxy: "http://internal-tf-lb-20210727220640487900000002-835786077.us-east-1.elb.amazonaws.com:3128" steps: @@ -161,7 +161,7 @@ jobs: test: env: - JOB_BASE_NAME: win-vs2019-cuda10.1-py3-test + JOB_BASE_NAME: win-vs2019-cuda10.2-py3-test SHARD_NUMBER: ${{ matrix.shard }} NUM_TEST_SHARDS: ${{ matrix.num_shards }} TEST_CONFIG: ${{ matrix.config }} @@ -279,7 +279,7 @@ jobs: env: AWS_DEFAULT_REGION: us-east-1 CIRCLE_BRANCH: ${{ steps.parse-ref.outputs.branch }} - JOB_BASE_NAME: win-vs2019-cuda10.1-py3-test + JOB_BASE_NAME: win-vs2019-cuda10.2-py3-test CIRCLE_PR_NUMBER: ${{ github.event.pull_request.number }} CIRCLE_SHA1: ${{ github.event.pull_request.head.sha || github.sha }} CIRCLE_TAG: ${{ steps.parse-ref.outputs.tag }} -- 2.7.4