Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
226 commits
Select commit Hold shift + click to select a range
c48647d
CMake changes/libraries/c++ standard to build against latest filament
errissa Nov 28, 2023
ea0a6a3
Compile materials for all platforms (OpenGL, Metal, Vulkan)
errissa Nov 28, 2023
2736006
Make GLFW/Filament initialization GLFW friendly
errissa Nov 28, 2023
5e488a5
Tweaks to deal with compilation errors
errissa Nov 28, 2023
9c773ff
Remove normalized floating point attribute types
errissa Nov 28, 2023
ba5d729
Temporary commit while deciding Vulkan v OpenGL
errissa Dec 10, 2023
74c4487
Merge branch 'main' into errissa/filament-1.46
errissa Dec 10, 2023
3c347da
Merge branch 'main' into errissa/filament-1.46
errissa Dec 28, 2023
37ad263
Update to Filament 1.49.1 on Linux
errissa Dec 28, 2023
836ed84
Don't flip Y since Vulkan uses upper left origin
errissa Dec 28, 2023
6ac80e0
Fix compilation issue on Apple Silicon
errissa Dec 28, 2023
3f0b87b
Update to latest Filament on Mac
errissa Dec 28, 2023
6216541
Update filament version on windows
errissa Dec 28, 2023
37a6de0
Remove references to old headless rendering flag/call
errissa Dec 28, 2023
451df37
Remove debug printout
errissa Dec 28, 2023
2fb6e46
Remove backend selection code
errissa Dec 28, 2023
0943e19
Apply style
errissa Dec 28, 2023
4def9e2
Unconditionally build c++17 and c++20 on windows
errissa Dec 29, 2023
f6e4ec7
Move header file to prevent compilation error
errissa Dec 29, 2023
189860f
Suppress deprecation warning on windows
errissa Dec 29, 2023
ef93713
Remove GLFW source
errissa Jan 8, 2024
9abd35f
Fix typo that caused link errors
errissa Jan 9, 2024
1d1dd2e
Fixes to find dependencies for GLFW
errissa Jan 9, 2024
ac7e57a
Fix crash on Mac
errissa Jan 10, 2024
a0d1fa9
Upgrade to GLFW 3.4
errissa Feb 29, 2024
4f17109
Merge branch 'main' of github.com:isl-org/Open3D into errissa/glfw-up…
ssheorey Aug 10, 2024
616a9e5
style fix, fix glfw init in glinfo for headless rendering (no display)
ssheorey Aug 14, 2024
b1335fc
Merge branch 'main' of github.com:isl-org/Open3D into errissa/filamen…
ssheorey Dec 12, 2024
2896a14
Merge branch 'main' of github.com:isl-org/Open3D into errissa/glfw-up…
ssheorey Dec 14, 2024
a8311fc
Merge branch 'errissa/glfw-upgrade' into errissa/filament-1.46
ssheorey Dec 14, 2024
aae0a05
Fix for DLL path for mac app
ssheorey Dec 14, 2024
7b32c06
Merge branch 'main' into errissa/filament-1.46
johnnynunez Jul 2, 2025
d8e705d
Update FilamentView and openblas.cmake for improved functionality and…
johnnynunez Jul 3, 2025
e29c8a1
Add additional C++ compiler flag to suppress transform warnings
johnnynunez Jul 3, 2025
36cc681
Remove hardcoded FILAMENT_RUNTIME_VER for better platform compatibility
johnnynunez Jul 3, 2025
22a619f
Update Filament version to 1.54.0 in build and download scripts
johnnynunez Jul 3, 2025
a66056f
Update Filament version to 1.54.0 in build and download scripts
johnnynunez Jul 3, 2025
f28d819
Update OpenBLAS version to 0.3.30 in openblas.cmake
johnnynunez Jul 3, 2025
3568f67
Suppress Clang nonnull warnings in FilamentScene.cpp
johnnynunez Jul 3, 2025
497116b
Mark kUseHeadless as maybe_unused to suppress compiler warnings
johnnynunez Jul 3, 2025
8381202
Add vertex filtering to TriangleMesh to set near-zero values to zero
johnnynunez Jul 4, 2025
01ba60b
Update CMake version based on architecture and clean up TriangleMesh …
johnnynunez Jul 4, 2025
1e0656d
FIX CUDA Docker for aarch64
johnnynunez Jul 4, 2025
b2faf72
WEBRTC COMPATIBLE NOT YET with build aarch64 in this framework
johnnynunez Jul 4, 2025
e5e4537
Update CMake and Dockerfile for WebRTC compatibility on ARM architecture
johnnynunez Jul 4, 2025
73428b5
Revert
johnnynunez Jul 5, 2025
75db07a
Update CMake to use C++20 standard in CMakeLists and README_SYCL
johnnynunez Jul 5, 2025
4f3f175
Downgrade C++ standard from 20 to 17 in CMakeLists and README_SYCL fo…
johnnynunez Jul 5, 2025
4864095
fix
johnnynunez Jul 5, 2025
4a497b5
Merge branch 'isl-org:main' into main
johnnynunez Jul 12, 2025
34889e1
Merge branch 'isl-org:main' into main
johnnynunez Jul 19, 2025
7388b89
Merge branch 'isl-org:main' into main
johnnynunez Jul 19, 2025
e483e6d
Merge branch 'isl-org:main' into main
johnnynunez Jul 20, 2025
0220724
macos13 no longer supported
johnnynunez Jul 20, 2025
53f3a02
C++20 in filament targets (MSVC required)
ssheorey Jul 21, 2025
2714138
Merge branch 'isl-org:main' into main
johnnynunez Jul 22, 2025
49acc0d
C++20 fmt fixes in visualization
ssheorey Jul 25, 2025
f697829
Windows fixes
ssheorey Jul 30, 2025
c1a544b
CI fixes - style and artifact, cache uploads
ssheorey Jul 30, 2025
23ffd75
style
ssheorey Jul 31, 2025
36c8c9c
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
a21d956
Merge branch 'main' into johnnynunez/main
johnnynunez Nov 9, 2025
af2f7c6
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
0f201cb
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
0884cd1
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Nov 9, 2025
ec4e671
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
1c1f12d
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
cacace3
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Nov 9, 2025
c20415b
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
4050725
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
67e1dd2
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
e2d61d3
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
d5eef8c
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
decd97f
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
5b5af1a
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
587757e
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
66b773d
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
1f1db69
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Nov 9, 2025
5285325
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
f3d63f8
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
03cf07a
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
43b7c16
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
2ba4e4d
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
9f15e29
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
d1ec1fc
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
9d99a21
bump clang 14 ubuntu 22.04
johnnynunez Nov 10, 2025
23c7044
revert
johnnynunez Nov 10, 2025
35a3caa
Update ubuntu-sycl.yml
johnnynunez Nov 11, 2025
edc3997
Fix arm builds upgrading external libraries
johnnynunez Dec 9, 2025
26ac0a6
upgrade stdgpu to be compatible with cuda 13
johnnynunez Dec 16, 2025
2d2ee4c
upgrade stdgpu to be compatible with cuda 13
johnnynunez Dec 16, 2025
3909119
fix wheel
johnnynunez Dec 16, 2025
ea51dd0
fix
johnnynunez Dec 16, 2025
4ed1328
fix
johnnynunez Dec 16, 2025
baf6518
cuda 13 by default to enable Thor
johnnynunez Dec 16, 2025
810b94d
cuda 13 by default to enable Thor
johnnynunez Dec 16, 2025
2ac646a
fix CUDA 13 Build
johnnynunez Dec 16, 2025
b26ff06
fix CUDA 13 Build
johnnynunez Dec 16, 2025
4fdd2af
Apply automatic code formatting
github-actions[bot] Dec 16, 2025
4c72bc8
fix macOS
johnnynunez Dec 16, 2025
f7835a5
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Dec 16, 2025
49cd1c9
fix macOS
johnnynunez Dec 16, 2025
f87774b
fix macOS
johnnynunez Dec 16, 2025
2c9b357
fix include of <chrono> header and update git commands in CMake
johnnynunez Dec 16, 2025
20e6cd6
fix
johnnynunez Dec 16, 2025
1f3630d
install libusb for ubuntu
johnnynunez Dec 16, 2025
150affc
install libusb for ubuntu
johnnynunez Dec 16, 2025
1faee05
finally building in cuda 13.1
johnnynunez Dec 16, 2025
426a693
upgrade to pytorch 2.10.0 and tensorflow 2.21 compatible with llvm21 …
johnnynunez Dec 16, 2025
32eeb3c
downgrade
johnnynunez Dec 16, 2025
23c1dc9
fix libusb macos librealsense
johnnynunez Dec 17, 2025
e6ab351
logic to test newer versions of tensorflow/pytorch
johnnynunez Dec 17, 2025
b81d5c3
logic to test newer versions of tensorflow/pytorch
johnnynunez Dec 17, 2025
2950be7
needed more space
johnnynunez Dec 17, 2025
6213746
needed more space
johnnynunez Dec 17, 2025
e743cbd
needed more space
johnnynunez Dec 17, 2025
710a330
needed more space
johnnynunez Dec 17, 2025
ec14559
needed more space
johnnynunez Dec 17, 2025
759869a
upgrade to node 25 for security
johnnynunez Dec 17, 2025
6e783d6
Be compatible with new API tensorflow > 2.19.0
johnnynunez Dec 17, 2025
4992081
Apply automatic code formatting
github-actions[bot] Dec 17, 2025
8a631d7
downgrade to stable release
johnnynunez Dec 17, 2025
b6804b5
Downgrade tensorflow and pytoch, ml ops must be updated first
johnnynunez Dec 17, 2025
852ab5e
fix absl error, only admit single argument
johnnynunez Dec 17, 2025
661169c
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Dec 17, 2025
6c67da0
Apply automatic code formatting
github-actions[bot] Dec 17, 2025
9f203db
enable xeon 6 & xe3 and full support python 3.13 and 3.14
johnnynunez Dec 17, 2025
3633bd4
Merge branch 'main' into johnnynunez/main
johnnynunez Jan 8, 2026
0755d6f
Merge remote-tracking branch 'origin/main' into johnnynunez/main
johnnynunez Jan 15, 2026
9e3d42a
CMake changes/libraries/c++ standard to build against latest filament
errissa Nov 28, 2023
b4b776b
Tweaks to deal with compilation errors
errissa Nov 28, 2023
73f6e8f
Apply style
errissa Dec 28, 2023
92e4eb5
Add vertex filtering to TriangleMesh to set near-zero values to zero
johnnynunez Jul 4, 2025
c7829b3
Update CMake version based on architecture and clean up TriangleMesh …
johnnynunez Jul 4, 2025
26ee199
Update CMake and Dockerfile for WebRTC compatibility on ARM architecture
johnnynunez Jul 4, 2025
0482f8d
Update CMake to use C++20 standard in CMakeLists and README_SYCL
johnnynunez Jul 5, 2025
dd82d97
Downgrade C++ standard from 20 to 17 in CMakeLists and README_SYCL fo…
johnnynunez Jul 5, 2025
f696358
CI fixes - style and artifact, cache uploads
ssheorey Jul 30, 2025
c8fa8f9
style
ssheorey Jul 31, 2025
be49e5c
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
4d395c3
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
c24bdb5
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
ecbf573
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
ea5499f
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
cc85501
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
63315de
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
53aa687
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
26c1666
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
e33c407
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
6b393e8
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
6709751
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
1fad3bd
some fixes filament v1.58.2
johnnynunez Nov 9, 2025
2c02f1f
Apply automatic code formatting
github-actions[bot] Nov 9, 2025
0a2ec88
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
6a8ff26
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
06e9da6
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
7b916c1
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
1623ee3
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
52304e6
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
88edc1a
build filament always to fix glibc errors
johnnynunez Nov 9, 2025
36a0c0d
bump clang 14 ubuntu 22.04
johnnynunez Nov 10, 2025
e889721
revert
johnnynunez Nov 10, 2025
8930bb2
Update ubuntu-sycl.yml
johnnynunez Nov 11, 2025
59914e6
upgrade stdgpu to be compatible with cuda 13
johnnynunez Dec 16, 2025
a6d5e16
upgrade stdgpu to be compatible with cuda 13
johnnynunez Dec 16, 2025
721b038
fix wheel
johnnynunez Dec 16, 2025
af04bf1
fix
johnnynunez Dec 16, 2025
863ae16
fix
johnnynunez Dec 16, 2025
7465b1e
cuda 13 by default to enable Thor
johnnynunez Dec 16, 2025
c090634
cuda 13 by default to enable Thor
johnnynunez Dec 16, 2025
eaf01c8
fix CUDA 13 Build
johnnynunez Dec 16, 2025
2209b96
fix CUDA 13 Build
johnnynunez Dec 16, 2025
e1c6b98
fix macOS
johnnynunez Dec 16, 2025
52bc2e1
Apply automatic code formatting
github-actions[bot] Dec 16, 2025
e6bcf8a
fix macOS
johnnynunez Dec 16, 2025
be6a720
fix macOS
johnnynunez Dec 16, 2025
5eaa6ca
fix include of <chrono> header and update git commands in CMake
johnnynunez Dec 16, 2025
d58ea95
fix
johnnynunez Dec 16, 2025
6eac154
install libusb for ubuntu
johnnynunez Dec 16, 2025
d6cd22e
install libusb for ubuntu
johnnynunez Dec 16, 2025
2c6200e
finally building in cuda 13.1
johnnynunez Dec 16, 2025
ba48a45
upgrade to pytorch 2.10.0 and tensorflow 2.21 compatible with llvm21 …
johnnynunez Dec 16, 2025
c743acc
downgrade
johnnynunez Dec 16, 2025
427dda1
fix libusb macos librealsense
johnnynunez Dec 17, 2025
d146f10
logic to test newer versions of tensorflow/pytorch
johnnynunez Dec 17, 2025
48237ac
logic to test newer versions of tensorflow/pytorch
johnnynunez Dec 17, 2025
7c25878
needed more space
johnnynunez Dec 17, 2025
acec1f9
needed more space
johnnynunez Dec 17, 2025
4988eb1
needed more space
johnnynunez Dec 17, 2025
3f3f604
needed more space
johnnynunez Dec 17, 2025
157c918
needed more space
johnnynunez Dec 17, 2025
1e10677
upgrade to node 25 for security
johnnynunez Dec 17, 2025
688dde1
Be compatible with new API tensorflow > 2.19.0
johnnynunez Dec 17, 2025
d08507c
Apply automatic code formatting
github-actions[bot] Dec 17, 2025
5045c4e
downgrade to stable release
johnnynunez Dec 17, 2025
a9af455
fix absl error, only admit single argument
johnnynunez Dec 17, 2025
a698f83
Downgrade tensorflow and pytoch, ml ops must be updated first
johnnynunez Dec 17, 2025
adc3f99
Apply automatic code formatting
github-actions[bot] Dec 17, 2025
2b38806
enable xeon 6 & xe3 and full support python 3.13 and 3.14
johnnynunez Dec 17, 2025
b06dfcb
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Jan 15, 2026
e215a7b
Latest stable PT and TF
ssheorey Jan 22, 2026
b47a4ba
Remove hardcoded FILAMENT_RUNTIME_VER value
johnnynunez Jan 30, 2026
fea2490
fix
johnnynunez Jan 30, 2026
8ebdc89
Merge remote-tracking branch 'origin/johnnynunez/main' into johnnynun…
johnnynunez Jan 30, 2026
ff5398c
Merge remote-tracking branch 'origin/main' into johnnynunez/main
johnnynunez Jan 30, 2026
cb5ae07
fix
johnnynunez Jan 30, 2026
c54c925
fix
johnnynunez Jan 30, 2026
6adbea2
fix
johnnynunez Jan 30, 2026
5d9e4cd
fix
johnnynunez Jan 30, 2026
1ee2918
fix tensorflow version
johnnynunez Jan 30, 2026
3cb277a
upgrade embree to 4.4.0
johnnynunez Jan 30, 2026
1504989
fix tensorflow
johnnynunez Jan 30, 2026
29b674f
fix tensorflow
johnnynunez Jan 30, 2026
e249ad5
fix tensorflow
johnnynunez Jan 30, 2026
b78ac7d
Update possionrecon.cmake
johnnynunez Feb 13, 2026
cf1202b
Remove unrelated changes
ssheorey Feb 15, 2026
aec4122
Revert CUDA from 13.0 to 12.6 for now.
ssheorey Feb 16, 2026
11a166f
Update PyTorch , TF ops build conditions for PyTorch 2.10, TF 2.20
ssheorey Feb 16, 2026
d440a0d
Link fmt to tools, (GLInfo etc.)
ssheorey Feb 17, 2026
cc82ed1
Add fmt lib for linking ManuallyAlignPointCloud, move its cmake script.
ssheorey Feb 17, 2026
ff00cd1
fixes
ssheorey Feb 17, 2026
3d6b6bf
Make fmt HEADER only again
ssheorey Feb 19, 2026
d9213cf
Update rimraf, glob for jupyter
ssheorey Feb 19, 2026
57cf400
fixes
ssheorey Feb 19, 2026
44651eb
Add /utf-8 options for Windows CUDA
ssheorey Feb 20, 2026
57a1276
fix
ssheorey Feb 20, 2026
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
26 changes: 12 additions & 14 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,8 @@ jobs:
CONFIG: [ON, OFF]
env:
BUILD_SHARED_LIBS: ${{ matrix.CONFIG }}
# Tensorflow 2.19, PyTorch 2.7 are only available for Apple Silicon (macos-14)
BUILD_TENSORFLOW_OPS: ${{ ( matrix.CONFIG == 'ON' && matrix.os == 'macos-14' ) && 'ON' || 'OFF' }}
BUILD_PYTORCH_OPS: ${{ ( matrix.CONFIG == 'ON' && matrix.os == 'macos-14' ) && 'ON' || 'OFF' }}
LOW_MEM_USAGE: ON
BUILD_TENSORFLOW_OPS: 'ON'
BUILD_PYTORCH_OPS: 'ON'
steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand All @@ -65,7 +63,7 @@ jobs:

- name: Install dependencies
run: |
brew install ccache pkg-config
brew install ccache pkg-config libusb

if [[ ${{ runner.arch }} == "ARM64" ]]; then
# Fix gfortran not found issue
Expand Down Expand Up @@ -140,10 +138,10 @@ jobs:
python_version: '3.13'

env:
# TensorFlow v2.19 only supports macOS-14 (Apple Silicon) and python 3.9-3.12
BUILD_TENSORFLOW_OPS: ${{ ( matrix.python_version >= '3.13' || matrix.os == 'macos-13' ) && 'OFF' || 'ON' }}
# PyTorch 2.7 only supports macOS-14 (Apple Silicon) and python 3.9-3.13 (only torch>=2.9 supports python 3.14)
BUILD_PYTORCH_OPS: ${{ ( matrix.python_version >= '3.14' || matrix.os == 'macos-13' ) && 'OFF' || 'ON' }}
# TensorFlow v2.20 only supports macOS-14 (Apple Silicon) and python 3.9-3.13
BUILD_TENSORFLOW_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
# PyTorch 2.10 only supports macOS-14 (Apple Silicon) and python 3.10-3.14
BUILD_PYTORCH_OPS: 'ON'
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
steps:
- name: Checkout source code
Expand Down Expand Up @@ -235,11 +233,11 @@ jobs:
python_version: '3.13'

env:
# TensorFlow v2.20 only supports macOS-14 (Apple Silicon) and python 3.9-3.13
BUILD_TENSORFLOW_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
# PyTorch 2.10 only supports macOS-14 (Apple Silicon) and python 3.10-3.14
BUILD_PYTORCH_OPS: 'ON'
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
# TensorFlow v2.19 only supports macOS-14 (Apple Silicon) and python 3.9-3.12
BUILD_TENSORFLOW_OPS: ${{ ( matrix.python_version >= '3.13' || matrix.os == 'macos-13' ) && 'OFF' || 'ON' }}
# PyTorch 2.7 only supports macOS-14 (Apple Silicon) and python 3.9-3.13 (only torch>=2.9 supports python 3.14)
BUILD_PYTORCH_OPS: ${{ ( matrix.python_version >= '3.14' || matrix.os == 'macos-13' ) && 'OFF' || 'ON' }}
steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand All @@ -248,7 +246,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
ref: refs/pull/687/head # main # TODO revert before merge
path: ${{ env.OPEN3D_ML_ROOT }}

- name: Download wheels
Expand Down
13 changes: 8 additions & 5 deletions .github/workflows/ubuntu-wheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ 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 Down Expand Up @@ -50,7 +48,9 @@ jobs:
PYTHON_VERSION: ${{ matrix.python_version }}
CCACHE_TAR_NAME: open3d-ubuntu-2204-cuda-ci-ccache
OPEN3D_CPU_RENDERING: true
BUILD_PYTORCH_OPS: ${{ ( matrix.python_version >= '3.14' ) && 'OFF' || 'ON' }} # Only torch>=2.9 supports py3.14
BUILD_PYTORCH_OPS: 'ON'
# TensorFlow v2.20 only supports python 3.9-3.13
BUILD_TENSORFLOW_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand Down Expand Up @@ -83,6 +83,7 @@ jobs:
elif [ "${{ env.PYTHON_VERSION }}" = "3.14" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then
docker/docker_build.sh cuda_wheel_py314
fi
shopt -s failglob
PIP_PKG_NAME="$(basename ${GITHUB_WORKSPACE}/open3d-[0-9]*.whl)"
PIP_CPU_PKG_NAME="$(basename ${GITHUB_WORKSPACE}/open3d_cpu*.whl)"
echo "PIP_PKG_NAME=$PIP_PKG_NAME" >> $GITHUB_ENV
Expand Down Expand Up @@ -143,7 +144,9 @@ jobs:
python_version: '3.13'
env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
BUILD_PYTORCH_OPS: ${{ ( matrix.python_version >= '3.14' ) && 'OFF' || 'ON' }} # Used here to disable GPU tests for py3.14 until torch supports it
BUILD_PYTORCH_OPS: 'ON'
# TensorFlow v2.20 only supports python 3.9-3.13
BUILD_TENSORFLOW_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand All @@ -155,7 +158,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
ref: refs/pull/687/head # main # TODO revert before merge
path: ${{ env.OPEN3D_ML_ROOT }}
- name: Download wheels
uses: actions/download-artifact@v4
Expand Down
12 changes: 5 additions & 7 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
ref: refs/pull/687/head # main # TODO revert before merge
path: open3d_ml

- name: Install PyTorch requirements
Expand Down Expand Up @@ -273,8 +273,7 @@ jobs:
python_version: '3.13'

env:
# PyTorch 2.7 supports python 3.10-3.13. PyTorch 2.9 supports python 3.14.
BUILD_PYTORCH_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
BUILD_PYTORCH_OPS: 'ON'

steps:
- name: Checkout source code
Expand All @@ -284,7 +283,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
ref: refs/pull/687/head # main # TODO revert before merge
path: open3d_ml

- name: Set up Python
Expand Down Expand Up @@ -374,8 +373,7 @@ jobs:
- is_main: false
python_version: '3.13'
env:
# PyTorch 2.7 supports python 3.10-3.13. PyTorch 2.9 supports python 3.14.
BUILD_PYTORCH_OPS: ${{ matrix.python_version >= '3.14' && 'OFF' || 'ON' }}
BUILD_PYTORCH_OPS: 'ON'
steps:
- name: Checkout source code
uses: actions/checkout@v4
Expand All @@ -384,7 +382,7 @@ jobs:
uses: actions/checkout@v4
with:
repository: isl-org/Open3D-ML
ref: main
ref: refs/pull/687/head # main # TODO revert before merge
path: open3d_ml

- name: Download wheels
Expand Down
8 changes: 4 additions & 4 deletions 3rdparty/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ A high-level C++ library of template headers for linear algebra, matrix and
vector operations, numerical solvers and related algorithms
http://eigen.tuxfamily.org/
--------------------------------------------------------------------------------
embree 4.3.1 Apache-2 license
embree 4.4.0 Apache-2 license
Embree is a collection of high-performance ray tracing kernels
https://github.com/embree/embree
--------------------------------------------------------------------------------
Expand All @@ -67,7 +67,7 @@ GLEW 2.1.0 MIT License
A cross-platform open-source C/C++ extension loading library
http://glew.sourceforge.net/
--------------------------------------------------------------------------------
GLFW 3.3.0 (dev) zlib/libpng license
GLFW 3.4.0 zlib/libpng license
A cross-platform library for creating windows with OpenGL contexts and receiving
input and events
http://www.glfw.org/
Expand All @@ -84,7 +84,7 @@ libpng 1.6.49 libpng license
The free reference library for reading and writing PNGs
http://www.libpng.org/
--------------------------------------------------------------------------------
librealsense 2.54.2 Apache-2 license
librealsense 2.57.4 Apache-2 license
A cross-platform library for capturing data from the Intel RealSense F200,
SR300, R200 and L500 cameras
https://github.com/IntelRealSense/librealsense
Expand Down Expand Up @@ -113,7 +113,7 @@ RPly 1.1.3 MIT license
A library to read and write PLY files
http://w3.impa.br/~diego/software/rply/
--------------------------------------------------------------------------------
stdgpu 1b6a3319 Apache-2.0 license
stdgpu d7c07d05 Apache-2.0 license
Efficient STL-like Data Structures on the GPU
https://github.com/stotko/stdgpu/
--------------------------------------------------------------------------------
Expand Down
6 changes: 3 additions & 3 deletions 3rdparty/embree/embree.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@ endif()
ExternalProject_Add(
ext_embree
PREFIX embree
URL https://github.com/embree/embree/archive/refs/tags/v4.3.3.tar.gz
URL_HASH SHA256=8a3bc3c3e21aa209d9861a28f8ba93b2f82ed0dc93341dddac09f1f03c36ef2d
URL https://github.com/embree/embree/archive/refs/tags/v4.4.0.tar.gz
URL_HASH SHA256=acb517b0ea0f4b442235d5331b69f96192c28da6aca5d5dde0cbe40799638d5c
DOWNLOAD_DIR "${OPEN3D_THIRD_PARTY_DOWNLOAD_DIR}/embree"
UPDATE_COMMAND ""
CMAKE_ARGS
Expand Down Expand Up @@ -109,4 +109,4 @@ ExternalProject_Add(
ExternalProject_Get_Property(ext_embree INSTALL_DIR)
set(EMBREE_INCLUDE_DIRS ${INSTALL_DIR}/include/ ${INSTALL_DIR}/src/ext_embree/) # "/" is critical.
set(EMBREE_LIB_DIR ${INSTALL_DIR}/${Open3D_INSTALL_LIB_DIR})
set(EMBREE_LIBRARIES embree4 simd lexers sys math tasking ${ISA_LIBS})
set(EMBREE_LIBRARIES embree4 simd lexers sys math tasking ${ISA_LIBS})
16 changes: 12 additions & 4 deletions 3rdparty/find_dependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -853,6 +853,13 @@ if (BUILD_LIBREALSENSE)
DOC "Library provided by the deb package libudev-dev")
target_link_libraries(3rdparty_librealsense INTERFACE ${UDEV_LIBRARY})
endif()
# Link system libusb-1.0 (required when USE_EXTERNAL_USB=ON)
# Required on both Linux and macOS
if (UNIX)
find_library(USB1_LIBRARY usb-1.0 REQUIRED
DOC "Library provided by the deb package libusb-1.0-dev (Linux) or Homebrew libusb (macOS)")
target_link_libraries(3rdparty_librealsense INTERFACE ${USB1_LIBRARY})
endif()
list(APPEND Open3D_3RDPARTY_PRIVATE_TARGETS_FROM_CUSTOM Open3D::3rdparty_librealsense)
else()
list(APPEND Open3D_3RDPARTY_PRIVATE_TARGETS_FROM_SYSTEM Open3D::3rdparty_librealsense)
Expand Down Expand Up @@ -1111,9 +1118,10 @@ if(NOT USE_SYSTEM_FMT)
LIBRARIES ${FMT_LIBRARIES}
DEPENDS ext_fmt
)
# FMT 6.0, newer versions may require different flags
target_compile_definitions(3rdparty_fmt INTERFACE FMT_HEADER_ONLY=0)
target_compile_definitions(3rdparty_fmt INTERFACE FMT_USE_WINDOWS_H=0)
if (WIN32)
target_compile_definitions(3rdparty_fmt INTERFACE FMT_USE_WINDOWS_H=0)
endif()
target_compile_definitions(3rdparty_fmt INTERFACE FMT_HEADER_ONLY)
target_compile_definitions(3rdparty_fmt INTERFACE FMT_STRING_ALIAS=1)
list(APPEND Open3D_3RDPARTY_HEADER_TARGETS_FROM_CUSTOM Open3D::3rdparty_fmt)
else()
Expand Down Expand Up @@ -1926,7 +1934,7 @@ if(USE_SYSTEM_EMBREE)
open3d_find_package_3rdparty_library(3rdparty_embree
PACKAGE embree
TARGETS embree
VERSION 4.3.3 # for "rtcGetErrorString"
VERSION 4.4.0
)
if(NOT 3rdparty_embree_FOUND)
set(USE_SYSTEM_EMBREE OFF)
Expand Down
9 changes: 2 additions & 7 deletions 3rdparty/fmt/fmt.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,8 @@ include(ExternalProject)

set(FMT_LIB_NAME fmt)

if (WIN32 AND BUILD_CUDA_MODULE)
set(FMT_VER "10.1.1")
set(FMT_SHA256 "78b8c0a72b1c35e4443a7e308df52498252d1cefc2b08c9a97bc9ee6cfe61f8b")
else ()
set(FMT_VER "10.2.1")
set(FMT_SHA256 "1250e4cc58bf06ee631567523f48848dc4596133e163f02615c97f78bab6c811")
endif()
set(FMT_VER "12.1.0")
set(FMT_SHA256 "ea7de4299689e12b6dddd392f9896f08fb0777ac7168897a244a6d6085043fea")

ExternalProject_Add(
ext_fmt
Expand Down
29 changes: 29 additions & 0 deletions 3rdparty/librealsense/apply_patch.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/bash
# Apply a patch if it's not already applied
PATCH_FILE="$1"
SOURCE_DIR="$2"

cd "$SOURCE_DIR" || exit 1

# Initialize git if needed
if [ ! -d .git ]; then
git init
fi

# Check if patch is already applied (reverse check)
if git apply --reverse --check --ignore-space-change --ignore-whitespace "$PATCH_FILE" 2>/dev/null; then
echo "Patch already applied, skipping: $PATCH_FILE"
exit 0
fi

# Try to apply the patch
if git apply --ignore-space-change --ignore-whitespace "$PATCH_FILE" 2>/dev/null; then
echo "Patch applied successfully: $PATCH_FILE"
exit 0
else
echo "Warning: Failed to apply patch (may already be applied): $PATCH_FILE"
# Check if the changes are already in the file by checking key content
# If the patch modifies a specific file, we can check if those changes exist
exit 0 # Don't fail the build if patch can't be applied
fi

20 changes: 5 additions & 15 deletions 3rdparty/librealsense/fix-cudacrt.patch
Original file line number Diff line number Diff line change
@@ -1,20 +1,13 @@
From e937d96e1a355d222b6af355e748f3150039c1f5 Mon Sep 17 00:00:00 2001
From: Cyril Kaiser <cyril.kaiser2@gmail.com>
Date: Sun, 14 Mar 2021 17:02:34 +0000
Subject: [PATCH] Set static/dynamic crt in CMAKE_CUDA_FLAGS.

---
CMake/cuda_config.cmake | 10 ++++++++++
1 file changed, 10 insertions(+)

diff --git a/CMake/cuda_config.cmake b/CMake/cuda_config.cmake
index d03a0f53d..59323577a 100644
index 711839b22..86edf63c4 100644
--- a/CMake/cuda_config.cmake
+++ b/CMake/cuda_config.cmake
@@ -13,3 +13,13 @@ message(STATUS "CUDA_LIBRARIES: ${CUDA_INCLUDE_DIRS} ${ALL_CUDA_LIBS}")
@@ -12,4 +12,14 @@ message(STATUS "CUDA_LIBRARIES: ${CUDA_INCLUDE_DIRS} ${ALL_CUDA_LIBS}")

set(CUDA_PROPAGATE_HOST_FLAGS OFF)
set(CUDA_SEPARABLE_COMPILATION ON)
set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS}; -O3 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_62,code=sm_62;")
-set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS}; -O3 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_62,code=sm_62;")
+set(CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS}; -O3 -gencode arch=compute_80,code=sm_80 -gencode arch=compute_100,code=sm_100 -gencode arch=compute_110,code=sm_110 -gencode arch=compute_120,code=sm_120;")
+
+if(WIN32 AND BUILD_WITH_STATIC_CRT)
+ foreach(flag_var
Expand All @@ -25,6 +18,3 @@ index d03a0f53d..59323577a 100644
+ endif()
+ endforeach()
+endif()
--
2.30.0

12 changes: 6 additions & 6 deletions 3rdparty/librealsense/fix-include-chrono.patch
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
diff --git a/src/backend.h b/src/backend.h
index a402e3dfb..0acd299c0 100644
index ae756ef8c..b28c569e7 100644
--- a/src/backend.h
+++ b/src/backend.h
@@ -14,6 +14,7 @@
@@ -10,6 +10,7 @@
#include "platform/frame-object.h"

#include <memory> // For shared_ptr
#include <functional> // For function
#include <memory>
+#include <chrono>
#include <thread> // For this_thread::sleep_for
#include <vector>
#include <algorithm>
#include <string>

16 changes: 15 additions & 1 deletion 3rdparty/librealsense/fix_mac_apple_silicon_build.patch
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,26 @@ From: Nir Azkiel <nir.azkiel@intel.com>
Date: Tue, 28 May 2024 17:17:04 +0300
Subject: [PATCH] fix mac apple silicon build

This patch reorders the ARM architecture checks to handle arm64/aarch64
before arm-* to fix Mac Apple Silicon builds.

The patch changes the order from:
- if(arm-*) with neon flags
- elseif(aarch64-*) with strict-align flags
To:
- if(arm64-* OR aarch64-*) with strict-align flags
- elseif(arm-*) with neon flags

NOTE: This fix is already included in librealsense v2.57.4+, so this patch
will be a no-op for v2.57.4 and later versions. The patch is kept for
backward compatibility with older versions that may need it.

---
CMake/unix_config.cmake | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/CMake/unix_config.cmake b/CMake/unix_config.cmake
index 5a187c7c7a..89272b8ee1 100644
index 434722e..c038809 100644
--- a/CMake/unix_config.cmake
+++ b/CMake/unix_config.cmake
@@ -19,12 +19,12 @@ macro(os_set_flags)
Expand Down
Loading
Loading