pytorch version in package name

Summary:
Pytorch 1.5 is coming soon. I imagine we will want the ability to upload conda packages for pytorch3d to anaconda cloud for each of pytorch 1.4 and pytorch 1.5. This change adds the dependent pytorch version to the name of the conda package to make that feasible.

As an example, a built package after this change will have a name like `linux-64/pytorch3d-0.1.1-py38_cu100_pyt14.tar.bz2`, instead of simply `linux-64/pytorch3d-0.1.1-py38_cu100.tar.bz2`.

Also some tiny cleanup of circleci config.

Other alternatives: (1) forcing users to update pytorch and pytorch3d together, (2) trying to get away with one build for multiple pytorch versions.

Reviewed By: nikhilaravi

Differential Revision: D20599039

fbshipit-source-id: 20164eda4a5141afed47b3596e559950d796ffc9
This commit is contained in:
Jeremy Reizenstein 2020-04-07 09:40:31 -07:00 committed by Facebook GitHub Bot
parent 01b5f7b228
commit 0fecb2ddb9
6 changed files with 10 additions and 9 deletions

View File

@ -213,16 +213,16 @@ workflows:
cu_version: "cu100" cu_version: "cu100"
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.6_cpu name: macos_wheel_py3.6_cpu
python_version: '3.6' python_version: '3.6'
pytorch_version: '1.4' pytorch_version: '1.4'
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.7_cpu name: macos_wheel_py3.7_cpu
python_version: '3.7' python_version: '3.7'
pytorch_version: '1.4' pytorch_version: '1.4'
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.8_cpu name: macos_wheel_py3.8_cpu
python_version: '3.8' python_version: '3.8'
pytorch_version: '1.4' pytorch_version: '1.4'

View File

@ -278,16 +278,16 @@ workflows:
cu_version: "cu100" cu_version: "cu100"
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.6_cpu name: macos_wheel_py3.6_cpu
python_version: '3.6' python_version: '3.6'
pytorch_version: '1.4' pytorch_version: '1.4'
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.7_cpu name: macos_wheel_py3.7_cpu
python_version: '3.7' python_version: '3.7'
pytorch_version: '1.4' pytorch_version: '1.4'
- binary_macos_wheel: - binary_macos_wheel:
cu_version: cpu cu_version: cpu
name: binary_linux_wheel_py3.8_cpu name: macos_wheel_py3.8_cpu
python_version: '3.8' python_version: '3.8'
pytorch_version: '1.4' pytorch_version: '1.4'

View File

@ -3,8 +3,6 @@
""" """
This script is adapted from the torchvision one. This script is adapted from the torchvision one.
There is no python2.7 nor macos.
TODO: python 3.8 when pytorch 1.4.
""" """
import os.path import os.path

View File

@ -139,6 +139,8 @@ else
export CONDA_PYTORCH_CONSTRAINT="- pytorch==${PYTORCH_VERSION}" export CONDA_PYTORCH_CONSTRAINT="- pytorch==${PYTORCH_VERSION}"
fi fi
export PYTORCH_VERSION_NODOT=${PYTORCH_VERSION//./}
# Loop through all Python versions to build a package for each # Loop through all Python versions to build a package for each
for py_ver in "${DESIRED_PYTHON[@]}"; do for py_ver in "${DESIRED_PYTHON[@]}"; do
build_string="py${py_ver}_${build_string_suffix}" build_string="py${py_ver}_${build_string_suffix}"

View File

@ -223,6 +223,7 @@ setup_conda_pytorch_constraint() {
export CONDA_PYTORCH_BUILD_CONSTRAINT="- pytorch==${PYTORCH_VERSION}${PYTORCH_VERSION_SUFFIX}" export CONDA_PYTORCH_BUILD_CONSTRAINT="- pytorch==${PYTORCH_VERSION}${PYTORCH_VERSION_SUFFIX}"
export CONDA_PYTORCH_CONSTRAINT="- pytorch==${PYTORCH_VERSION}${PYTORCH_VERSION_SUFFIX}" export CONDA_PYTORCH_CONSTRAINT="- pytorch==${PYTORCH_VERSION}${PYTORCH_VERSION_SUFFIX}"
fi fi
export PYTORCH_VERSION_NODOT=${PYTORCH_VERSION//./}
} }
# Translate CUDA_VERSION into CUDA_CUDATOOLKIT_CONSTRAINT # Translate CUDA_VERSION into CUDA_CUDATOOLKIT_CONSTRAINT

View File

@ -26,7 +26,7 @@ requirements:
{{ environ.get('CONDA_CUDATOOLKIT_CONSTRAINT') }} {{ environ.get('CONDA_CUDATOOLKIT_CONSTRAINT') }}
build: build:
string: py{{py}}_{{ environ['CU_VERSION'] }} string: py{{py}}_{{ environ['CU_VERSION'] }}_pyt{{ environ['PYTORCH_VERSION_NODOT']}}
script: python setup.py install --single-version-externally-managed --record=record.txt # [not win] script: python setup.py install --single-version-externally-managed --record=record.txt # [not win]
script_env: script_env:
- CUDA_HOME - CUDA_HOME