Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support python 312 #6717

Merged
merged 34 commits into from
Oct 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
6607677
python3.12 support
swheaton Mar 25, 2024
4ba2d39
tensorboard bump
swheaton Mar 25, 2024
17baa25
typo
swheaton Mar 25, 2024
fae3dff
what is happening with my typo fixing
swheaton Mar 25, 2024
8a2cc17
bump scipy
swheaton Mar 25, 2024
66f8800
unrelated style check fix
swheaton Mar 25, 2024
5303613
scipy 1.11.4 required for python3.12, otherwise unchanged
swheaton Mar 25, 2024
e5dd29c
tensorboard 2.16.2 required for python3.12, otherwise unchanged
swheaton Mar 25, 2024
15abf18
fix improper error fstring
swheaton Mar 26, 2024
e9a6d71
Merge branch 'main' of github.com:isl-org/Open3D into support-python-312
ssheorey Jul 13, 2024
d96ecbf
Update windows CUDA version to match Linux, TF version, torch as late…
ssheorey Jul 16, 2024
9e1b5ae
use c++17 if pytorch ops are enabled
benjaminum Aug 14, 2024
da622f4
Merge branch 'main' into support-python-312
benjaminum Aug 14, 2024
1ff496f
update url for Windows CUDA installer
benjaminum Aug 14, 2024
164a01a
Update Windows MSVC to CUDA 11.8
ssheorey Aug 20, 2024
ea0c66d
Merge branch 'main' into support-python-312
ssheorey Aug 20, 2024
0c4132b
Merge branch 'main' of github.com:isl-org/Open3D into support-python-312
ssheorey Aug 20, 2024
945e35d
Always obey CMAKE_CUDA_ARCHITECTURES if used.
ssheorey Aug 22, 2024
2222fcb
use shared_ptr to capture array in lambda
benjaminum Aug 28, 2024
35ee51e
fix tf ml ops tests on macos
benjaminum Sep 1, 2024
170b650
apply style
benjaminum Sep 4, 2024
68fca39
Install thrust with CUDA
ssheorey Sep 7, 2024
6314046
Remove fmt formatter for embree RTCError to fix macOS error
ssheorey Sep 13, 2024
5cddb82
Merge branch 'main' of github.com:isl-org/Open3D into support-python-312
ssheorey Sep 13, 2024
99bc91f
switch to miniforge
benjaminum Sep 15, 2024
7cdd7e3
use cuda 12.3 as suggested here https://github.com/tensorflow/tensorf…
benjaminum Sep 15, 2024
13699e8
change to cuda 12.1 for pytorch and tensorflow
benjaminum Sep 16, 2024
267df1a
set TORCH_CUDA_ARCH_LIST as workaround for CUDA 12 and Pytorch <2.4
benjaminum Sep 17, 2024
8fc1bd7
Merge branch 'main' into bu/support-python-312-mirror
benjaminum Sep 18, 2024
cc01512
fix failed merge
benjaminum Sep 19, 2024
9856186
Merge branch 'main' of github.com:isl-org/Open3D into bu/support-pyth…
ssheorey Sep 30, 2024
4ccae42
Match PyTorch ops CUDA arch list to that of Open3D
ssheorey Oct 3, 2024
b6cc832
do not install cuda pytorch before build_pip_package
ssheorey Oct 3, 2024
712412f
Use CUDA 12.1 everywhere. Final cleanup.
ssheorey Oct 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 11 additions & 4 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v5
with:
python-version: '3.11'
python-version: '3.12'

- name: Install dependencies
run: |
Expand Down Expand Up @@ -194,7 +194,7 @@ jobs:
# macos-12 is Intel runner, macos-14 is Apple Silicon
# https://github.com/actions/runner-images
os: [macos-12, macos-14]
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -209,6 +209,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'

env:
BUILD_CUDA_MODULE: OFF
Expand Down Expand Up @@ -310,12 +312,14 @@ jobs:
fail-fast: false
# https://git.luolix.topmunity/t/how-to-conditionally-include-exclude-items-in-matrix-eg-based-on-branch/16853/6
matrix:
python_version: ['3.10', '3.11']
python_version: ['3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'
steps:
- name: Checkout source code # for gh release upload
uses: actions/checkout@v4
Expand Down Expand Up @@ -374,7 +378,7 @@ jobs:
fail-fast: false
matrix:
os: [macos-12, macos-14]
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -388,6 +392,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'

env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
Expand All @@ -399,6 +405,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
path: ${{ env.OPEN3D_ML_ROOT }}

- name: Download wheels
Expand Down
13 changes: 11 additions & 2 deletions .github/workflows/ubuntu-wheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -43,6 +43,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'
env:
DEVELOPER_BUILD: ${{ github.event.inputs.developer_build || 'ON' }}
PYTHON_VERSION: ${{ matrix.python_version }}
Expand All @@ -67,6 +69,8 @@ jobs:
docker/docker_build.sh cuda_wheel_py310_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.11" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py311_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.12" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py312_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.8" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
docker/docker_build.sh cuda_wheel_py38
elif [ "${{ env.PYTHON_VERSION }}" = "3.9" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
Expand All @@ -75,6 +79,8 @@ jobs:
docker/docker_build.sh cuda_wheel_py310
elif [ "${{ env.PYTHON_VERSION }}" = "3.11" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
docker/docker_build.sh cuda_wheel_py311
elif [ "${{ env.PYTHON_VERSION }}" = "3.12" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
docker/docker_build.sh cuda_wheel_py312
fi
PIP_PKG_NAME="$(basename ${GITHUB_WORKSPACE}/open3d-[0-9]*.whl)"
PIP_CPU_PKG_NAME="$(basename ${GITHUB_WORKSPACE}/open3d_cpu*.whl)"
Expand Down Expand Up @@ -122,7 +128,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -132,6 +138,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'
env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
steps:
Expand All @@ -145,6 +153,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: ss/python-3.12 # remove before merge
path: ${{ env.OPEN3D_ML_ROOT }}
- name: Download wheels
uses: actions/download-artifact@v4
Expand Down
17 changes: 11 additions & 6 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ env:
STOOLS_VER: "67.3.2"
JEDI_VER: "0.17.2" # https://github.com/ipython/ipython/issues/12740
IDNA_VER: "2.8" # https://github.com/psf/requests/issues/5710
CUDA_VERSION: "12.1.0"
SRC_DIR: "D:\\a\\open3d\\open3d"
BUILD_DIR: "C:\\Open3D\\build"
NPROC: 2
Expand All @@ -47,7 +48,6 @@ jobs:
STATIC_RUNTIME: ON
include:
- BUILD_CUDA_MODULE: ON
CUDA_VERSION: 11.0.3
env:
BUILD_WEBRTC: ${{ ( matrix.BUILD_SHARED_LIBS == 'OFF' && matrix.STATIC_RUNTIME == 'ON' ) && 'ON' || 'OFF' }}

Expand All @@ -64,20 +64,20 @@ jobs:
if: ${{ matrix.BUILD_CUDA_MODULE == 'ON' }}
run: |
# Define variables
$CUDA_VER_FULL = "${{ matrix.CUDA_VERSION }}"
$CUDA_VER_FULL = "${{ env.CUDA_VERSION }}"
$CUDA_VER_ARR = $CUDA_VER_FULL.Split(".")
$CUDA_VER = "$($CUDA_VER_ARR[0]).$($CUDA_VER_ARR[1])"
$CUDA_VER_ID = "$($CUDA_VER_ARR[0])_$($CUDA_VER_ARR[1])"
# Installer url
if ( $CUDA_VER_ARR[0] -ge 11 ) {
$CUDA_URL = "http://developer.download.nvidia.com/compute/cuda/$CUDA_VER_FULL/network_installers/cuda_$($CUDA_VER_FULL)_win10_network.exe"
$CUDA_URL = "http://developer.download.nvidia.com/compute/cuda/$CUDA_VER_FULL/network_installers/cuda_$($CUDA_VER_FULL)_windows_network.exe"
} else {
$CUDA_URL = "http://developer.download.nvidia.com/compute/cuda/$CUDA_VER/Prod/network_installers/cuda_$($CUDA_VER_FULL)_win10_network.exe"
}
# Installer arguments
$CUDA_INSTALL_ARGS = "-s"
# Required packages
$CUDA_PACKAGES = "nvcc", "visual_studio_integration", "cublas", "cublas_dev", "cudart", "cusolver", "cusolver_dev", "npp", "npp_dev"
$CUDA_PACKAGES = "nvcc", "visual_studio_integration", "cublas", "cublas_dev", "cudart", "cusolver", "cusolver_dev", "npp", "npp_dev", "thrust"
$CUDA_PACKAGES.ForEach({ $CUDA_INSTALL_ARGS += " $($_)_$($CUDA_VER)" })
# Download and install CUDA
echo "Downloading CUDA installer from $CUDA_URL"
Expand Down Expand Up @@ -110,6 +110,7 @@ jobs:
if (${env:DEVELOPER_BUILD} -ne "OFF") {
${env:DEVELOPER_BUILD}="ON"
}
cmake --version
cmake -G "Visual Studio 16 2019" -A x64 `
-DDEVELOPER_BUILD="${env:DEVELOPER_BUILD}" `
-DCMAKE_SYSTEM_VERSION="10.0.19041.0" `
Expand Down Expand Up @@ -240,7 +241,7 @@ jobs:
fail-fast: false
# https://git.luolix.topmunity/t/how-to-conditionally-include-exclude-items-in-matrix-eg-based-on-branch/16853/6
matrix:
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -250,6 +251,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'

steps:
- name: Checkout source code
Expand Down Expand Up @@ -328,7 +331,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.8', '3.9', '3.10', '3.11']
python_version: ['3.8', '3.9', '3.10', '3.11', '3.12']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
Expand All @@ -338,6 +341,8 @@ jobs:
python_version: '3.9'
- is_main: false
python_version: '3.10'
- is_main: false
python_version: '3.11'

steps:
- name: Checkout source code
Expand Down
Loading
Loading