Unverified Commit 70247f1f authored by Matthias Fey's avatar Matthias Fey Committed by GitHub
Browse files

Merge pull request #38 from rusty1s/py20

PyTorch 2.0 wheels
parents 451709db 823a34e2
...@@ -13,27 +13,18 @@ jobs: ...@@ -13,27 +13,18 @@ jobs:
# We have trouble building for Windows - drop for now. # We have trouble building for Windows - drop for now.
os: [ubuntu-18.04, macos-10.15] # windows-2019 os: [ubuntu-18.04, macos-10.15] # windows-2019
python-version: ['3.7', '3.8', '3.9', '3.10'] python-version: ['3.7', '3.8', '3.9', '3.10']
torch-version: [1.13.0] # [1.12.0, 1.13.0] torch-version: [1.13.0, 2.0.0]
cuda-version: ['cpu', 'cu102', 'cu113', 'cu116', 'cu117'] # We have trouble building for `cu116` due to PyTorch 1.13.0 bugs
cuda-version: ['cpu', 'cu117', 'cu118']
exclude: exclude:
- torch-version: 1.12.0 - torch-version: 2.0.0
cuda-version: 'cu117' python-version: '3.7'
- torch-version: 1.13.0
cuda-version: 'cu102'
- torch-version: 1.13.0 - torch-version: 1.13.0
cuda-version: 'cu113' cuda-version: 'cu118'
- os: macos-10.15
cuda-version: 'cu102'
- os: macos-10.15
cuda-version: 'cu113'
- os: macos-10.15
cuda-version: 'cu116'
- os: macos-10.15 - os: macos-10.15
cuda-version: 'cu117' cuda-version: 'cu117'
- os: windows-2019 - os: macos-10.15
cuda-version: 'cu102' cuda-version: 'cu118'
- os: windows-2019 # Complains about CUDA mismatch.
python-version: '3.7'
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
......
...@@ -11,26 +11,24 @@ jobs: ...@@ -11,26 +11,24 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
os: [ubuntu-18.04, macos-10.15, windows-2019] os: [ubuntu-18.04, macos-10.15, windows-2019]
python-version: ['3.7', '3.8', '3.9', '3.10'] python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
torch-version: [1.12.0, 1.13.0] torch-version: [1.13.0, 2.0.0]
cuda-version: ['cpu', 'cu102', 'cu113', 'cu116', 'cu117'] cuda-version: ['cpu', 'cu116', 'cu117', 'cu118']
exclude: exclude:
- torch-version: 1.12.0
cuda-version: 'cu117'
- torch-version: 1.13.0 - torch-version: 1.13.0
cuda-version: 'cu102' python-version: '3.11'
- torch-version: 2.0.0
python-version: '3.7'
- torch-version: 1.13.0 - torch-version: 1.13.0
cuda-version: 'cu113' cuda-version: 'cu118'
- os: macos-10.15 - torch-version: 2.0.0
cuda-version: 'cu102' cuda-version: 'cu116'
- os: macos-10.15
cuda-version: 'cu113'
- os: macos-10.15 - os: macos-10.15
cuda-version: 'cu116' cuda-version: 'cu116'
- os: macos-10.15 - os: macos-10.15
cuda-version: 'cu117' cuda-version: 'cu117'
- os: windows-2019 - os: macos-10.15
cuda-version: 'cu102' cuda-version: 'cu118'
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
......
#!/bin/bash
CUDA_HOME=/usr/local/cuda-11.8
LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
PATH=${CUDA_HOME}/bin:${PATH}
export FORCE_CUDA=1
export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
#!/bin/bash
OS=ubuntu1804
wget -nv https://developer.download.nvidia.com/compute/cuda/repos/${OS}/x86_64/cuda-${OS}.pin
sudo mv cuda-${OS}.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget -nv https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-${OS}-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo dpkg -i cuda-repo-${OS}-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo cp /var/cuda-repo-${OS}-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get -qq update
sudo apt install cuda-nvcc-11-8 cuda-libraries-dev-11-8
sudo apt clean
rm -f https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-${OS}-11-8-local_11.8.0-520.61.05-1_amd64.deb
#!/bin/bash
CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.8
PATH=${CUDA_HOME}/bin:$PATH
PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
export FORCE_CUDA=1
export TORCH_CUDA_ARCH_LIST="6.0+PTX"
#!/bin/bash
# Install NVIDIA drivers, see:
# https://github.com/pytorch/vision/blob/master/packaging/windows/internal/cuda_install.bat#L99-L102
curl -k -L "https://drive.google.com/u/0/uc?id=1injUyo3lnarMgWyRcXqKg4UGnN0ysmuq&export=download" --output "/tmp/gpu_driver_dlls.zip"
7z x "/tmp/gpu_driver_dlls.zip" -o"/c/Windows/System32"
export CUDA_SHORT=11.8
export CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.0/local_installers
export CUDA_FILE=cuda_${CUDA_SHORT}.0_522.06_windows.exe
# Install CUDA:
curl -k -L "${CUDA_URL}/${CUDA_FILE}" --output "${CUDA_FILE}"
echo ""
echo "Installing from ${CUDA_FILE}..."
PowerShell -Command "Start-Process -FilePath \"${CUDA_FILE}\" -ArgumentList \"-s nvcc_${CUDA_SHORT} cuobjdump_${CUDA_SHORT} nvprune_${CUDA_SHORT} cupti_${CUDA_SHORT} cublas_dev_${CUDA_SHORT} cudart_${CUDA_SHORT} cufft_dev_${CUDA_SHORT} curand_dev_${CUDA_SHORT} cusolver_dev_${CUDA_SHORT} cusparse_dev_${CUDA_SHORT} thrust_${CUDA_SHORT} npp_dev_${CUDA_SHORT} nvrtc_dev_${CUDA_SHORT} nvml_dev_${CUDA_SHORT}\" -Wait -NoNewWindow"
echo "Done!"
rm -f "${CUDA_FILE}"
...@@ -17,7 +17,7 @@ jobs: ...@@ -17,7 +17,7 @@ jobs:
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v2
with: with:
python-version: 3.9 python-version: 3.8
- name: Install dependencies - name: Install dependencies
run: | run: |
...@@ -26,30 +26,3 @@ jobs: ...@@ -26,30 +26,3 @@ jobs:
- name: Run linting - name: Run linting
run: | run: |
flake8 . flake8 .
pyroma:
runs-on: ubuntu-latest
strategy:
matrix:
torch-version: [1.13.0]
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install PyTorch ${{ matrix.torch-version }}
run: |
pip install torch==${{ matrix.torch-version }} --extra-index-url https://download.pytorch.org/whl/cpu
- name: Install dependencies
run: |
pip install pyroma
- name: Check package metadata
run: |
pyroma --min=10 .
...@@ -15,8 +15,8 @@ jobs: ...@@ -15,8 +15,8 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
os: [ubuntu-latest, windows-latest] os: [ubuntu-latest, windows-latest]
python-version: [3.7] python-version: [3.8]
torch-version: [1.12.0, 1.13.0] torch-version: [1.13.0, 2.0.0]
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
......
cmake_minimum_required(VERSION 3.0) cmake_minimum_required(VERSION 3.0)
project(torchsplineconv) project(torchsplineconv)
set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_STANDARD 14)
set(TORCHSPLINECONV_VERSION 1.2.1) set(TORCHSPLINECONV_VERSION 1.2.2)
option(WITH_CUDA "Enable CUDA support" OFF) option(WITH_CUDA "Enable CUDA support" OFF)
......
...@@ -37,39 +37,39 @@ conda install pytorch-spline-conv -c pyg ...@@ -37,39 +37,39 @@ conda install pytorch-spline-conv -c pyg
We alternatively provide pip wheels for all major OS/PyTorch/CUDA combinations, see [here](https://data.pyg.org/whl). We alternatively provide pip wheels for all major OS/PyTorch/CUDA combinations, see [here](https://data.pyg.org/whl).
#### PyTorch 1.13 #### PyTorch 2.0
To install the binaries for PyTorch 1.13.0, simply run To install the binaries for PyTorch 2.0.0, simply run
``` ```
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-1.13.0+${CUDA}.html pip install torch-spline-conv -f https://data.pyg.org/whl/torch-2.0.0+${CUDA}.html
``` ```
where `${CUDA}` should be replaced by either `cpu`, `cu116`, or `cu117` depending on your PyTorch installation. where `${CUDA}` should be replaced by either `cpu`, `cu117`, or `cu118` depending on your PyTorch installation.
| | `cpu` | `cu116` | `cu117` | | | `cpu` | `cu117` | `cu118` |
|-------------|-------|---------|---------| |-------------|-------|---------|---------|
| **Linux** | ✅ | ✅ | ✅ | | **Linux** | ✅ | ✅ | ✅ |
| **Windows** | ✅ | ✅ | ✅ | | **Windows** | ✅ | ✅ | ✅ |
| **macOS** | ✅ | | | | **macOS** | ✅ | | |
#### PyTorch 1.12 #### PyTorch 1.13
To install the binaries for PyTorch 1.12.0, simply run To install the binaries for PyTorch 1.13.0, simply run
``` ```
pip install torch-spline-conv -f https://data.pyg.org/whl/torch-1.12.0+${CUDA}.html pip install torch-spline-conv -f https://data.pyg.org/whl/torch-1.13.0+${CUDA}.html
``` ```
where `${CUDA}` should be replaced by either `cpu`, `cu102`, `cu113`, or `cu116` depending on your PyTorch installation. where `${CUDA}` should be replaced by either `cpu`, `cu116`, or `cu117` depending on your PyTorch installation.
| | `cpu` | `cu102` | `cu113` | `cu116` | | | `cpu` | `cu116` | `cu117` |
|-------------|-------|---------|---------|---------| |-------------|-------|---------|---------|
| **Linux** | ✅ | ✅ | ✅ | ✅ | | **Linux** | ✅ | ✅ | ✅ |
| **Windows** | ✅ | | ✅ | ✅ | | **Windows** | ✅ | ✅ | ✅ |
| **macOS** | ✅ | | | | | **macOS** | ✅ | | |
**Note:** Binaries of older versions are also provided for PyTorch 1.4.0, PyTorch 1.5.0, PyTorch 1.6.0, PyTorch 1.7.0/1.7.1, PyTorch 1.8.0/1.8.1, PyTorch 1.9.0, PyTorch 1.10.0/1.10.1/1.10.2 and PyTorch 1.11.0 (following the same procedure). **Note:** Binaries of older versions are also provided for PyTorch 1.4.0, PyTorch 1.5.0, PyTorch 1.6.0, PyTorch 1.7.0/1.7.1, PyTorch 1.8.0/1.8.1, PyTorch 1.9.0, PyTorch 1.10.0/1.10.1/1.10.2, PyTorch 1.11.0 and PyTorch 1.12.0/1.12.1 (following the same procedure).
For older versions, you need to explicitly specify the latest supported version number or install via `pip install --no-index` in order to prevent a manual installation from source. For older versions, you need to explicitly specify the latest supported version number or install via `pip install --no-index` in order to prevent a manual installation from source.
You can look up the latest supported version number [here](https://data.pyg.org/whl). You can look up the latest supported version number [here](https://data.pyg.org/whl).
......
``` ```
./build_conda.sh 3.9 1.13.0 cu116 # python, pytorch and cuda version ./build_conda.sh 3.9 2.0.0 cu117 # python, pytorch and cuda version
``` ```
...@@ -10,6 +10,9 @@ if [ "${CUDA_VERSION}" = "cpu" ]; then ...@@ -10,6 +10,9 @@ if [ "${CUDA_VERSION}" = "cpu" ]; then
export CONDA_CUDATOOLKIT_CONSTRAINT="cpuonly # [not osx]" export CONDA_CUDATOOLKIT_CONSTRAINT="cpuonly # [not osx]"
else else
case $CUDA_VERSION in case $CUDA_VERSION in
cu118)
export CONDA_CUDATOOLKIT_CONSTRAINT="pytorch-cuda==11.8.*"
;;
cu117) cu117)
export CONDA_CUDATOOLKIT_CONSTRAINT="pytorch-cuda==11.7.*" export CONDA_CUDATOOLKIT_CONSTRAINT="pytorch-cuda==11.7.*"
;; ;;
......
package: package:
name: pytorch-spline-conv name: pytorch-spline-conv
version: 1.2.1 version: 1.2.2
source: source:
path: ../.. path: ../..
......
...@@ -11,7 +11,7 @@ from torch.__config__ import parallel_info ...@@ -11,7 +11,7 @@ from torch.__config__ import parallel_info
from torch.utils.cpp_extension import (CUDA_HOME, BuildExtension, CppExtension, from torch.utils.cpp_extension import (CUDA_HOME, BuildExtension, CppExtension,
CUDAExtension) CUDAExtension)
__version__ = '1.2.1' __version__ = '1.2.2'
URL = 'https://github.com/rusty1s/pytorch_spline_conv' URL = 'https://github.com/rusty1s/pytorch_spline_conv'
WITH_CUDA = False WITH_CUDA = False
......
...@@ -3,7 +3,7 @@ import os.path as osp ...@@ -3,7 +3,7 @@ import os.path as osp
import torch import torch
__version__ = '1.2.1' __version__ = '1.2.2'
for library in ['_version', '_basis', '_weighting']: for library in ['_version', '_basis', '_weighting']:
cuda_spec = importlib.machinery.PathFinder().find_spec( cuda_spec = importlib.machinery.PathFinder().find_spec(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment