isl-org / isl-org/Open3D

Non-deterministic for-loop during building from source code

Open
#7,390 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
14k
Forks
2.6k
Avg merge
5d 18h
Merged PRs (30d)
6

Description

### Checklist

- [x] I have searched for [similar issues](https://github.com/isl-org/Open3D/issues).
- [x] For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [x] I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch).

### Steps to reproduce the issue

Hi, Open3D team,

I try to build from source to check an PR https://github.com/isl-org/Open3D/pull/7381, which is trying to fix the issue #7301 .

But during the compilation, the program raise an error, complaining that an for-loop inside the building file is non-deterministic, which I am unable to fix it by simple modifications.

Some details can check in another issue #7301.

I copy and paste some info from #7301 in the following .

Git Information:
```
(open3d) $USER@$HOSTNAME:$BASE/Open3D/build$ git rev-parse HEAD
0836ead2d679b2cfc237b559398e7f1cac67fe67
(open3d) $USER@$HOSTNAME:$BASE/Open3D/build$ git status
On branch nicolaloi/cuda-multipass-knn
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git restore ..." to discard changes in working directory)
modified: ../CMakeLists.txt

no changes added to commit (use "git add" and/or "git commit -a")
(open3d) $USER@$HOSTNAME:$BASE/Open3D/build$ git diff
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 74e97b5a9..035be7f3d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,4 +1,5 @@
cmake_minimum_required(VERSION 3.24)
+link_libraries(/usr/lib/x86_64-linux-gnu/libzstd.so)
# If you're using Ubuntu 20.04, we suggest you install the latest CMake from the
# official repository https://apt.kitware.com/.
# CMake 3.24+ is required for CUDA native arch selection
(open3d) $USER@$HOSTNAME:$BASE/Open3D/build$
```

I firstly run `cmake -DBUILD_CUDA_MODULE=ON -DBUILD_SYCL_MODULE=ON -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx ..`

Then,

When I run `make -j8`, it output following error:

```
Consolidate compiler generated dependencies of target tpipelines_kernel [55/9274]
[ 57%] Built target tio
[ 58%] Built target tgeometry
Consolidate compiler generated dependencies of target utility
[ 58%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization.dir/utility/ColorMap.cpp.o
[ 58%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization.dir/utility/DrawGeometry.cpp.o
[ 59%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization_impl.dir/shader/GeometryRenderer.cpp.o
[ 59%] Building CXX object cpp/open3d/geometry/CMakeFiles/geometry.dir/SurfaceReconstructionPoisson.cpp.o
[ 60%] Built target tpipelines
[ 61%] Built target tpipelines_kernel
[ 61%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/Application.cpp.o
[ 62%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/BitmapWindowSystem.cpp.o
[ 62%] Building CXX object cpp/open3d/geometry/CMakeFiles/geometry.dir/TriangleMeshSimplification.cpp.o
[ 64%] Built target utility
[ 64%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/Button.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/Checkbox.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization.dir/utility/GLHelper.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/Color.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization_impl.dir/shader/ImageMaskShader.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization_impl.dir/shader/ImageShader.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/gui/CMakeFiles/GUI.dir/ColorEdit.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization_impl.dir/shader/NormalShader.cpp.o
[ 64%] Building CXX object cpp/open3d/visualization/CMakeFiles/visualization.dir/utility/PointCloudPicker.cpp.o
[ 64%] Building CXX object cpp/open3d/geometry/CMakeFiles/geometry.dir/TriangleMeshSubdivide.cpp.o
In file included from $BASE/Open3D/cpp/open3d/geometry/SurfaceReconstructionPoisson.cpp:32:
In file included from $BASE/Open3D/build/poisson/src/ext_poisson/PoissonRecon/Src/FEMTree.h:53:
In file included from $BASE/Open3D/build/poisson/src/ext_poisson/PoissonRecon/Src/SparseMatrix.h:153:
$BASE/Open3D/build/poisson/src/ext_poisson/PoissonRecon/Src/SparseMatrix.inl:466:24: error: reference to non-static member function must be called
466 | for( size_t i=0 ; i

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.