diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml index e16248b0..7f6c31bf 100644 --- a/.github/actions/setup/action.yml +++ b/.github/actions/setup/action.yml @@ -6,7 +6,7 @@ inputs: default: '3.10' torch-version: required: false - default: '2.10.0' + default: '2.11.0' cuda-version: required: false default: cpu @@ -40,7 +40,7 @@ runs: - name: Install PyTorch ${{ inputs.torch-version }}+${{ inputs.cuda-version }} run: | - if [ ${{ inputs.torch-version }} == '2.11.0' ]; then + if [ ${{ inputs.torch-version }} == '2.12.0' ]; then uv pip install --pre torch --torch-backend ${{ inputs.cuda-version }} else uv pip install torch==${{ inputs.torch-version }} --torch-backend ${{ inputs.cuda-version }} @@ -50,14 +50,6 @@ runs: python -c "import torch; print('CXX11 ABI:', torch.compiled_with_cxx11_abi())" shell: bash - - name: Disable CUDNN - if: ${{ inputs.cuda-version != 'cpu' && inputs.torch-version == '1.13.0' }} - run: | - Torch_DIR=`python -c 'import torch;print(torch.utils.cmake_prefix_path)'` - sed -i '95,100d' ${Torch_DIR}/Caffe2/Caffe2Config.cmake - sed -i 's/;caffe2::cudnn-public//g' ${Torch_DIR}/Caffe2/Caffe2Targets.cmake - shell: bash - - name: Downgrade GLIBC if: ${{ runner.os == 'Linux' }} run: | diff --git a/.github/workflows/utils/build_linux.sh b/.github/workflows/utils/build_linux.sh index 4439e278..8f2fe7e3 100644 --- a/.github/workflows/utils/build_linux.sh +++ b/.github/workflows/utils/build_linux.sh @@ -2,8 +2,8 @@ set -ex CUDA_VERSION="${1:?Specify cuda version, e.g. cpu, cu130}" -PYTHON_VERSION="${2:?Specify python version, e.g. 3.13}" -TORCH_VERSION="${3:?Specify torch version, e.g. 2.10.0}" +PYTHON_VERSION="${2:?Specify python version, e.g. 3.14}" +TORCH_VERSION="${3:?Specify torch version, e.g. 2.11.0}" echo "CUDA_VERSION: ${CUDA_VERSION}" echo "PYTHON_VERSION: ${PYTHON_VERSION//./}" echo "TORCH_VERSION: ${TORCH_VERSION}" @@ -14,7 +14,7 @@ echo "TORCH_CUDA_ARCH_LIST: ${TORCH_CUDA_ARCH_LIST}" export CIBW_BUILD="cp${PYTHON_VERSION//./}-manylinux_x86_64" # pyg-lib doesn't have torch as a dependency, so we need to explicitly install it when running tests. -if [[ "${TORCH_VERSION}" == "2.11.0" ]]; then +if [[ "${TORCH_VERSION}" == "2.12.0" ]]; then export CIBW_BEFORE_BUILD="pip install ninja wheel setuptools && pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/${CUDA_VERSION}" export CIBW_BEFORE_TEST="pip install pytest && pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/${CUDA_VERSION}" else diff --git a/.github/workflows/utils/build_macos.sh b/.github/workflows/utils/build_macos.sh index 4ca9b0be..5f2095d7 100644 --- a/.github/workflows/utils/build_macos.sh +++ b/.github/workflows/utils/build_macos.sh @@ -1,14 +1,14 @@ #!/bin/bash set -ex -PYTHON_VERSION="${1:?Specify python version, e.g. 3.13}" -TORCH_VERSION="${2:?Specify torch version, e.g. 2.10.0}" +PYTHON_VERSION="${1:?Specify python version, e.g. 3.14}" +TORCH_VERSION="${2:?Specify torch version, e.g. 2.11.0}" echo "PYTHON_VERSION: ${PYTHON_VERSION//./}" echo "TORCH_VERSION: ${TORCH_VERSION}" export CIBW_BUILD="cp${PYTHON_VERSION//./}-macosx_arm64" # pyg-lib doesn't have torch as a dependency, so we need to explicitly install it when running tests. -if [[ "${TORCH_VERSION}" == "2.11.0" ]]; then +if [[ "${TORCH_VERSION}" == "2.12.0" ]]; then export CIBW_BEFORE_BUILD="pip install ninja wheel setuptools && pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu" export CIBW_BEFORE_TEST="pip install pytest && pip install --pre torch --index-url https://download.pytorch.org/whl/nightly/cpu" else diff --git a/.github/workflows/utils/full_matrix_linux.json b/.github/workflows/utils/full_matrix_linux.json index 4b4caeb5..4c566a19 100644 --- a/.github/workflows/utils/full_matrix_linux.json +++ b/.github/workflows/utils/full_matrix_linux.json @@ -1,4 +1,9 @@ [ + { + "torch-version": "2.11.0", + "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], + "cuda-version": ["cpu", "cu126", "cu128", "cu130"] + }, { "torch-version": "2.10.0", "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], diff --git a/.github/workflows/utils/full_matrix_macos.json b/.github/workflows/utils/full_matrix_macos.json index 55d6165a..73762d1d 100644 --- a/.github/workflows/utils/full_matrix_macos.json +++ b/.github/workflows/utils/full_matrix_macos.json @@ -1,4 +1,9 @@ [ + { + "torch-version": "2.11.0", + "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], + "cuda-version": ["cpu"] + }, { "torch-version": "2.10.0", "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], diff --git a/.github/workflows/utils/full_matrix_windows.json b/.github/workflows/utils/full_matrix_windows.json index 4b4caeb5..4c566a19 100644 --- a/.github/workflows/utils/full_matrix_windows.json +++ b/.github/workflows/utils/full_matrix_windows.json @@ -1,4 +1,9 @@ [ + { + "torch-version": "2.11.0", + "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], + "cuda-version": ["cpu", "cu126", "cu128", "cu130"] + }, { "torch-version": "2.10.0", "python-version": ["3.10", "3.11", "3.12", "3.13", "3.14"], diff --git a/.github/workflows/utils/minimal_matrix_linux.json b/.github/workflows/utils/minimal_matrix_linux.json index 16f96a02..f3317fb1 100644 --- a/.github/workflows/utils/minimal_matrix_linux.json +++ b/.github/workflows/utils/minimal_matrix_linux.json @@ -1,6 +1,6 @@ [ { - "torch-version": "2.10.0", + "torch-version": "2.11.0", "python-version": ["3.10", "3.14"], "cuda-version": ["cpu", "cu130"] }, diff --git a/.github/workflows/utils/minimal_matrix_macos.json b/.github/workflows/utils/minimal_matrix_macos.json index 4f85415e..5013b9dd 100644 --- a/.github/workflows/utils/minimal_matrix_macos.json +++ b/.github/workflows/utils/minimal_matrix_macos.json @@ -1,6 +1,6 @@ [ { - "torch-version": "2.10.0", + "torch-version": "2.11.0", "python-version": ["3.10", "3.14"], "cuda-version": ["cpu"] }, diff --git a/.github/workflows/utils/minimal_matrix_windows.json b/.github/workflows/utils/minimal_matrix_windows.json index 16f96a02..f3317fb1 100644 --- a/.github/workflows/utils/minimal_matrix_windows.json +++ b/.github/workflows/utils/minimal_matrix_windows.json @@ -1,6 +1,6 @@ [ { - "torch-version": "2.10.0", + "torch-version": "2.11.0", "python-version": ["3.10", "3.14"], "cuda-version": ["cpu", "cu130"] }, diff --git a/CHANGELOG.md b/CHANGELOG.md index e7869e00..ce984439 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/). ## [Unreleased] ### Added +- Added PyTorch 2.11 support ([#608](https://github.com/pyg-team/pyg-lib/pull/608)) - Added Python 3.14 support ([#581](https://github.com/pyg-team/pyg-lib/pull/581), [#582](https://github.com/pyg-team/pyg-lib/pull/582), [#583](https://github.com/pyg-team/pyg-lib/pull/583)) - Migrated `rusty1s/pytorch_spline_conv` to `pyg-lib` ([#566](https://github.com/pyg-team/pyg-lib/pull/566), [#567](https://github.com/pyg-team/pyg-lib/pull/567), [#568](https://github.com/pyg-team/pyg-lib/pull/568), [#569](https://github.com/pyg-team/pyg-lib/pull/569), [#570](https://github.com/pyg-team/pyg-lib/pull/570), [#572](https://github.com/pyg-team/pyg-lib/pull/572)) - Added CUDA 13.0 support on Windows ([#580](https://github.com/pyg-team/pyg-lib/pull/580)) diff --git a/README.md b/README.md index b43ae855..cfaa5077 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ ## Installation -We provide pre-built Python wheels for all major OS/PyTorch/CUDA combinations from Python 3.10 till 3.13, see [here](https://data.pyg.org/whl). +We provide pre-built Python wheels for all major OS/PyTorch/CUDA combinations from Python 3.10 till 3.14, see [here](https://data.pyg.org/whl). To install the wheels, simply run @@ -30,11 +30,17 @@ pip install pyg-lib -f https://data.pyg.org/whl/torch-${TORCH}+${CUDA}.html where -* `${TORCH}` should be replaced by either `2.8.0`, `2.9.0`, or `2.10.0` +* `${TORCH}` should be replaced by either `2.8.0`, `2.9.0`, `2.10.0`, or `2.11.0` * `${CUDA}` should be replaced by either `cpu`, `cu126`, `cu128`, `cu129`, or `cu130` The following combinations are supported: +| PyTorch 2.11 | `cpu` | `cu126` | `cu128` | `cu129` | `cu130` | +|--------------|-------|---------|---------|---------|---------| +| **Linux** | ✅ | ✅ | ✅ | | ✅ | +| **Windows** | ✅ | ✅ | ✅ | | ✅ | +| **macOS** | ✅ | | | | | + | PyTorch 2.10 | `cpu` | `cu126` | `cu128` | `cu129` | `cu130` | |--------------|-------|---------|---------|---------|---------| | **Linux** | ✅ | ✅ | ✅ | | ✅ | @@ -55,7 +61,7 @@ The following combinations are supported: ### From nightly -Nightly wheels are provided for Linux from Python 3.10 till 3.13: +Nightly wheels are provided for Linux from Python 3.10 till 3.14: ``` pip install pyg-lib -f https://data.pyg.org/whl/nightly/torch-${TORCH}+${CUDA}.html diff --git a/docs/requirements.txt b/docs/requirements.txt index f4b328c2..5ac0a649 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,2 @@ -https://download.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-manylinux_2_28_x86_64.whl +https://download.pytorch.org/whl/cpu/torch-2.11.0%2Bcpu-cp310-cp310-manylinux_2_28_x86_64.whl git+https://github.com/pyg-team/pyg_sphinx_theme.git