Skip to content

Commit

Permalink
Merge branch 'master' into sganjugu/remdup2
Browse files Browse the repository at this point in the history
  • Loading branch information
intelshashi authored Nov 15, 2023
2 parents a7664c8 + 2a11e0e commit 9155acf
Show file tree
Hide file tree
Showing 89 changed files with 2,140 additions and 509 deletions.
6 changes: 5 additions & 1 deletion .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'

- name: Install dependencies
env:
Expand Down Expand Up @@ -123,6 +123,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases-master/*
gsutil retention temp set gs://open3d-releases-master/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases-master/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet."
fi
18 changes: 11 additions & 7 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: 3.7
python-version: 3.8
- name: Install dependencies
run: |
brew install ccache pkg-config
Expand Down Expand Up @@ -127,16 +127,16 @@ jobs:
fail-fast: false
# https://github.community/t/how-to-conditionally-include-exclude-items-in-matrix-eg-based-on-branch/16853/6
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'

env:
BUILD_CUDA_MODULE: OFF
Expand Down Expand Up @@ -234,16 +234,16 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'

env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
Expand Down Expand Up @@ -311,6 +311,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases-master/*
gsutil retention temp set gs://open3d-releases-master/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases-master/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet. Docs not ready."
fi
2 changes: 1 addition & 1 deletion .github/workflows/style.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'
- name: Install dependencies
run: |
pip install -U clang-format~=10.0.0 yapf==0.30.0 nbformat
Expand Down
29 changes: 18 additions & 11 deletions .github/workflows/ubuntu-wheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,9 @@ concurrency:

env:
GCE_CLI_GHA_VERSION: '416.0.0' # Fixed to avoid dependency on API changes
BUILD_CUDA_MODULE: 'ON'
BUILD_PYTORCH_OPS: 'ON'
BUILD_TENSORFLOW_OPS: 'OFF' # Turn ON when cxx11_abi is same for TF and PyTorch

jobs:
build-wheel:
Expand All @@ -27,16 +30,16 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'
env:
DEVELOPER_BUILD: ${{ github.event.inputs.developer_build || 'ON' }}
PYTHON_VERSION: ${{ matrix.python_version }}
Expand All @@ -53,22 +56,22 @@ jobs:
# `docker/docker_build.sh xxx` command to execute locally.
- name: Docker build
run: |
if [ "${{ env.PYTHON_VERSION }}" = "3.7" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py37_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.8" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
if [ "${{ env.PYTHON_VERSION }}" = "3.8" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py38_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.9" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py39_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.10" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py310_dev
elif [ "${{ env.PYTHON_VERSION }}" = "3.7" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
docker/docker_build.sh cuda_wheel_py37
elif [ "${{ env.PYTHON_VERSION }}" = "3.11" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then
docker/docker_build.sh cuda_wheel_py311_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
docker/docker_build.sh cuda_wheel_py39
elif [ "${{ env.PYTHON_VERSION }}" = "3.10" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
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
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 @@ -114,16 +117,16 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'
env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
steps:
Expand Down Expand Up @@ -199,6 +202,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases-master/*
gsutil retention temp set gs://open3d-releases-master/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases-master/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet."
fi
2 changes: 0 additions & 2 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@ jobs:
env:
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS }}
BUILD_CUDA_MODULE: OFF
BUILD_TENSORFLOW_OPS: ${{ matrix.MLOPS }}
BUILD_PYTORCH_OPS: ${{ matrix.MLOPS }}
DEVELOPER_BUILD: ${{ github.event.inputs.developer_build || 'ON' }}
OPEN3D_CPU_RENDERING: true
steps:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/vtk_packages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ on:
jobs:

Linux:
# TODO: Convert to docker
runs-on: ubuntu-18.04
steps:
- name: Checkout source code
Expand Down
29 changes: 13 additions & 16 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,11 @@ concurrency:
cancel-in-progress: true

env:
PIP_VER: "21.1.1"
PIP_VER: "23.2.1"
WHEEL_VER: "0.38.4"
STOOLS_VER: "67.3.2"
PYTEST_VER: "7.1.2"
PYTEST_RANDOMLY_VER: "3.8.0"
SCIPY_VER: "1.7.3"
JEDI_VER: "0.17.2" # https://github.com/ipython/ipython/issues/12740
IDNA_VER: "2.8" # https://github.com/psf/requests/issues/5710
TENSORBOARD_VER: "2.8"
SRC_DIR: "D:\\a\\open3d\\open3d"
BUILD_DIR: "C:\\Open3D\\build"
NPROC: 2
Expand Down Expand Up @@ -101,7 +97,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: 3.7
python-version: 3.8

- name: Config
# Move build directory to C: https://github.com/actions/virtual-environments/issues/1341
Expand Down Expand Up @@ -246,16 +242,16 @@ jobs:
fail-fast: false
# https://github.community/t/how-to-conditionally-include-exclude-items-in-matrix-eg-based-on-branch/16853/6
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'

steps:
- name: Checkout source code
Expand Down Expand Up @@ -351,16 +347,16 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
python_version: ['3.8', '3.9', '3.10', '3.11']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
python_version: '3.8'
- is_master: false
python_version: '3.9'
- is_master: false
python_version: '3.10'

steps:
- name: Checkout source code
Expand Down Expand Up @@ -388,10 +384,7 @@ jobs:
python -m pip install --upgrade pip==${{ env.PIP_VER }} `
wheel==${{ env.WHEEL_VER }} `
setuptools==${{ env.STOOLS_VER }}
python -m pip install -U pytest==${{ env.PYTEST_VER }}
python -m pip install -U pytest-randomly==${{ env.PYTEST_RANDOMLY_VER }}
python -m pip install -U scipy==${{ env.SCIPY_VER }} `
tensorboard==${{ env.TENSORBOARD_VER }}
python -m pip install -U -r python/requirements_test.txt
$py_tag=(python -c "import sys; print(f'cp{sys.version_info.major}{sys.version_info.minor}')")
if (Test-Path -Path "pip_package") {
$PIP_PKG_NAME=(Get-ChildItem pip_package\open3d*-$py_tag-*.whl).Name
Expand Down Expand Up @@ -446,6 +439,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases-master/*
gsutil retention temp set gs://open3d-releases-master/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases-master/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet."
fi
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ docs/tutorial/**/*.ply
docs/tutorial/**/*.pcd
docs/tutorial/**/*.json
docs/_out/
docs/_build/
docs/python_api/
docs/python_example/
docs/conf.py
Expand Down
1 change: 0 additions & 1 deletion 3rdparty/assimp/assimp.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ ExternalProject_Add(
-DCMAKE_CXX_FLAGS:STRING=${assimp_cmake_cxx_flags}
-DBUILD_SHARED_LIBS=OFF
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DASSIMP_NO_EXPORT=ON
-DASSIMP_BUILD_ASSIMP_TOOLS=OFF
-DASSIMP_BUILD_TESTS=OFF
-DASSIMP_INSTALL_PDB=OFF
Expand Down
45 changes: 35 additions & 10 deletions 3rdparty/cmake/FindPytorch.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -97,18 +97,43 @@ foreach(lib ${TORCH_LIBRARIES})
endforeach(lib)

# Check if the c++11 ABI is compatible on Linux
if(UNIX AND NOT APPLE AND ((Pytorch_CXX11_ABI AND (NOT GLIBCXX_USE_CXX11_ABI)) OR
(NOT Pytorch_CXX11_ABI AND GLIBCXX_USE_CXX11_ABI)))
if(Pytorch_CXX11_ABI)
set(NEEDED_ABI_FLAG "ON")
if(UNIX AND NOT APPLE)
if((Pytorch_CXX11_ABI AND (NOT GLIBCXX_USE_CXX11_ABI)) OR
(NOT Pytorch_CXX11_ABI AND GLIBCXX_USE_CXX11_ABI))
if(Pytorch_CXX11_ABI)
set(NEEDED_ABI_FLAG "ON")
else()
set(NEEDED_ABI_FLAG "OFF")
endif()
message(FATAL_ERROR "PyTorch and Open3D ABI mismatch: ${Pytorch_CXX11_ABI} != ${GLIBCXX_USE_CXX11_ABI}.\n"
"Please use -DGLIBCXX_USE_CXX11_ABI=${NEEDED_ABI_FLAG} "
"in the cmake config command to change the Open3D ABI.")
else()
set(NEEDED_ABI_FLAG "OFF")
message(STATUS "PyTorch matches Open3D ABI: ${Pytorch_CXX11_ABI} == ${GLIBCXX_USE_CXX11_ABI}")
endif()
message(FATAL_ERROR "PyTorch and Open3D ABI mismatch: ${Pytorch_CXX11_ABI} != ${GLIBCXX_USE_CXX11_ABI}.\n"
"Please use -DGLIBCXX_USE_CXX11_ABI=${NEEDED_ABI_FLAG} "
"in the cmake config command to change the Open3D ABI.")
else()
message(STATUS "PyTorch matches Open3D ABI: ${Pytorch_CXX11_ABI} == ${GLIBCXX_USE_CXX11_ABI}")
endif()

message(STATUS "Pytorch_VERSION: ${Pytorch_VERSION}, CUDAToolkit_VERSION: ${CUDAToolkit_VERSION}")
if (BUILD_PYTORCH_OPS AND BUILD_CUDA_MODULE AND CUDAToolkit_VERSION
VERSION_GREATER_EQUAL "11.0" AND Pytorch_VERSION VERSION_LESS
"1.9")
message(WARNING
"--------------------------------------------------------------------------------\n"
" \n"
" You are compiling PyTorch ops with CUDA 11 with PyTorch version < 1.9. This \n"
" configuration may have stability issues. See \n"
" https://github.com/isl-org/Open3D/issues/3324 and \n"
" https://github.com/pytorch/pytorch/issues/52663 for more information on this \n"
" problem. \n"
" \n"
" We recommend to compile PyTorch from source with compile flags \n"
" '-Xcompiler -fno-gnu-unique' \n"
" \n"
" or use the PyTorch wheels at \n"
" https://github.com/isl-org/open3d_downloads/releases/tag/torch1.8.2 \n"
" \n"
"--------------------------------------------------------------------------------\n"
)
endif()

include(FindPackageHandleStandardArgs)
Expand Down
26 changes: 14 additions & 12 deletions 3rdparty/cmake/FindTensorflow.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ if(NOT Tensorflow_FOUND)
# Get Tensorflow_FRAMEWORK_LIB
find_library(
Tensorflow_FRAMEWORK_LIB
NAMES tensorflow_framework libtensorflow_framework.so.2
NAMES tensorflow_framework tensorflow_framework.2 libtensorflow_framework.so.2
PATHS "${Tensorflow_LIB_DIR}"
NO_DEFAULT_PATH
)
Expand All @@ -59,21 +59,23 @@ if (UNIX AND NOT APPLE)
endif()

# Check if the c++11 ABI is compatible
if(UNIX AND NOT APPLE AND ((Tensorflow_CXX11_ABI AND (NOT GLIBCXX_USE_CXX11_ABI)) OR
(NOT Tensorflow_CXX11_ABI AND GLIBCXX_USE_CXX11_ABI)))
if(TensorFlow_CXX11_ABI)
set(NEEDED_ABI_FLAG "ON")
if (UNIX AND NOT APPLE)
if(((Tensorflow_CXX11_ABI AND (NOT GLIBCXX_USE_CXX11_ABI)) OR
(NOT Tensorflow_CXX11_ABI AND GLIBCXX_USE_CXX11_ABI)))
if(TensorFlow_CXX11_ABI)
set(NEEDED_ABI_FLAG "ON")
else()
set(NEEDED_ABI_FLAG "OFF")
endif()
message(FATAL_ERROR "TensorFlow and Open3D ABI mismatch: ${Tensorflow_CXX11_ABI} != ${GLIBCXX_USE_CXX11_ABI}.\n"
"Please use -D GLIBCXX_USE_CXX11_ABI=${NEEDED_ABI_FLAG} "
"in the cmake config command to change the Open3D ABI.")
else()
set(NEEDED_ABI_FLAG "OFF")
message(STATUS "TensorFlow matches Open3D ABI: ${Tensorflow_CXX11_ABI} == ${GLIBCXX_USE_CXX11_ABI}")
endif()
message(FATAL_ERROR "TensorFlow and Open3D ABI mismatch: ${Tensorflow_CXX11_ABI} != ${GLIBCXX_USE_CXX11_ABI}.\n"
"Please use -D GLIBCXX_USE_CXX11_ABI=${NEEDED_ABI_FLAG} "
"in the cmake config command to change the Open3D ABI.")
else()
message(STATUS "TensorFlow matches Open3D ABI: ${Tensorflow_CXX11_ABI} == ${GLIBCXX_USE_CXX11_ABI}")
endif()

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(
Tensorflow DEFAULT_MSG Tensorflow_INCLUDE_DIR Tensorflow_LIB_DIR
Tensorflow_FRAMEWORK_LIB Tensorflow_DEFINITIONS)
Tensorflow_DEFINITIONS)
Loading

0 comments on commit 9155acf

Please sign in to comment.