Ransac_voting_gpu_layer/ransac_voting.cpython-310-x86_64-linux-gnu.so: undefined symbol

Claude 2 says this is an ABI incompatibility issue between RANSAC voting and PyTorch however I am not sure how to resolve it.

Here is details also cross-posted in original repo:

(hybridpose) mona@ada:~/HybridPose$ cd lib/ransac_voting_gpu_layer
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ python setup.py build_ext --inplace
running build_ext
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:502: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
  warnings.warn(msg.format('we could not find ninja.'))
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:424: UserWarning: There are no g++ version bounds defined for CUDA version 11.8
  warnings.warn(f'There are no {compiler_name} version bounds defined for CUDA version {cuda_str_version}')


(hybridpose) mona@ada:~/HybridPose$ cd lib/regressor
(hybridpose) mona@ada:~/HybridPose/lib/regressor$ make
g++ -O3 --std=c++11 -shared -Ieigen -IDataStructure -IOperation -ILinearAlgebra -o wrapper.so -fPIC wrapper.cpp DataStructure/*.cpp Operation/*.cpp LinearAlgebra/*.cpp


(hybridpose) mona@ada:~/HybridPose$ LD_LIBRARY_PATH=lib/regressor:$LD_LIBRARY_PATH python src/train_core.py
Traceback (most recent call last):
  File "/home/mona/HybridPose/src/train_core.py", line 16, in <module>
    from trainers.coretrainer import CoreTrainer
  File "/home/mona/HybridPose/./trainers/coretrainer.py", line 10, in <module>
    from lib.ransac_voting_gpu_layer.ransac_voting_gpu import ransac_voting_layer_v3
  File "/home/mona/HybridPose/lib/ransac_voting_gpu_layer/ransac_voting_gpu.py", line 2, in <module>
    import lib.ransac_voting_gpu_layer.ransac_voting as ransac_voting
ImportError: /home/mona/HybridPose/lib/ransac_voting_gpu_layer/ransac_voting.cpython-310-x86_64-linux-gnu.so: undefined symbol: _ZN3c106detail19maybe_wrap_dim_slowEllb


I have:

(hybridpose) mona@ada:~/HybridPose$ conda env export > environment.yml
(hybridpose) mona@ada:~/HybridPose$ cat environment.yml 
name: hybridpose
channels:
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=5.1=1_gnu
  - bzip2=1.0.8=h7b6447c_0
  - ca-certificates=2023.08.22=h06a4308_0
  - ld_impl_linux-64=2.38=h1181459_1
  - libffi=3.4.4=h6a678d5_0
  - libgcc-ng=11.2.0=h1234567_1
  - libgomp=11.2.0=h1234567_1
  - libstdcxx-ng=11.2.0=h1234567_1
  - libuuid=1.41.5=h5eee18b_0
  - ncurses=6.4=h6a678d5_0
  - openssl=3.0.11=h7f8727e_2
  - pip=23.2.1=py310h06a4308_0
  - python=3.10.13=h955ad1f_0
  - readline=8.2=h5eee18b_0
  - setuptools=68.0.0=py310h06a4308_0
  - sqlite=3.41.2=h5eee18b_0
  - tk=8.6.12=h1ccaba5_0
  - tzdata=2023c=h04d1e81_0
  - wheel=0.41.2=py310h06a4308_0
  - xz=5.4.2=h5eee18b_0
  - zlib=1.2.13=h5eee18b_0
  - pip:
      - astropy==5.3.4
      - certifi==2023.7.22
      - charset-normalizer==3.3.0
      - click==8.1.7
      - cloudpickle==3.0.0
      - contourpy==1.1.1
      - cycler==0.12.1
      - dask==2023.10.0
      - fonttools==4.43.1
      - fsspec==2023.9.2
      - idna==3.4
      - imageio==2.31.5
      - importlib-metadata==6.8.0
      - joblib==1.3.2
      - kiwisolver==1.4.5
      - lazy-loader==0.3
      - locket==1.0.0
      - markupsafe==2.1.3
      - matplotlib==3.8.0
      - mpmath==1.3.0
      - networkx==3.1
      - numpy==1.26.1
      - opencv-python==4.8.1.78
      - packaging==23.2
      - partd==1.4.1
      - pillow==10.1.0
      - platformdirs==3.11.0
      - pooch==1.7.0
      - pyamg==5.0.1
      - pyerfa==2.0.1
      - pyparsing==3.1.1
      - python-dateutil==2.8.2
      - pywavelets==1.4.1
      - pyyaml==6.0.1
      - requests==2.31.0
      - scikit-image==0.22.0
      - scikit-learn==1.3.1
      - scipy==1.11.3
      - simpleitk==2.3.0
      - six==1.16.0
      - sympy==1.12
      - threadpoolctl==3.2.0
      - tifffile==2023.9.26
      - toolz==0.12.0
      - torch==2.1.1+cu118
      - torchaudio==2.1.1+cu118
      - torchtext==0.14.0
      - torchvision==0.16.1+cu118
      - tqdm==4.66.1
      - typing-extensions==4.8.0
      - urllib3==2.0.6
      - zipp==3.17.0
prefix: /home/mona/anaconda3/envs/hybridpose

(hybridpose) mona@ada:~/HybridPose$ python
Python 3.10.13 (main, Sep 11 2023, 13:44:35) [GCC 11.2.0] on linux

and

(base) mona@ada:~$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Wed_Sep_21_10:33:58_PDT_2022
Cuda compilation tools, release 11.8, V11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0

and

(base) mona@ada:~$ nvidia-smi 
Wed Dec 13 09:41:35 2023       
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.104.12             Driver Version: 535.104.12   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA RTX 6000 Ada Gene...    On  | 00000000:52:00.0  On |                  Off |
| 31%   60C    P2              72W / 300W |   5067MiB / 49140MiB |      3%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
                                                                                         
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      2310      G   /usr/lib/xorg/Xorg                         1088MiB |
|    0   N/A  N/A      2535      G   /usr/bin/gnome-shell                        102MiB |
|    0   N/A  N/A      3040      G   ...AAAAAAAACAAAAAAAAAA= --shared-files       41MiB |
|    0   N/A  N/A      3678      G   ...irefox/3358/usr/lib/firefox/firefox      308MiB |
|    0   N/A  N/A     26577      G   /usr/lib/thunderbird/thunderbird             19MiB |
|    0   N/A  N/A    151053      G   ...AAAAAAAIAAAAAAAAAA== --shared-files      102MiB |
|    0   N/A  N/A    388240      G   ...97542783,9996950370839883190,262144       81MiB |
|    0   N/A  N/A    862586      C   python                                      918MiB |
|    0   N/A  N/A    863180      C   python                                      730MiB |
|    0   N/A  N/A    864122      C   python                                      730MiB |
|    0   N/A  N/A    901572    C+G   ./blender                                   379MiB |
|    0   N/A  N/A   1014271      G   ...sion,SpareRendererForSitePerProcess       55MiB |
|    0   N/A  N/A   1023738      G   meshlab                                      13MiB |
|    0   N/A  N/A   1024568    C+G   ./blender                                   357MiB |
+---------------------------------------------------------------------------------------+

Checked the issues, the solution here didn’t work for my case Import Error: Ransac Voting Layer - undefined symbo · Issue #18 · chensong1995/HybridPose · GitHub

Original author of RANSAC voting mentioned add import torch above the line which already is there compile ransac_voting · Issue #13 · zju3dv/pvnet · GitHub

import torch
import lib.ransac_voting_gpu_layer.ransac_voting as ransac_voting

I also have:

(hybridpose) mona@ada:~/HybridPose$ ldd lib/ransac_voting_gpu_layer/ransac_voting.cpython-310-x86_64-linux-gnu.so 
	linux-vdso.so.1 (0x00007fffe68ec000)
	libc10.so => not found
	libtorch_cpu.so => not found
	libtorch_python.so => not found
	libcudart.so.11.0 => /usr/local/cuda-11.8/lib64/libcudart.so.11.0 (0x00007fd6e6c00000)
	libc10_cuda.so => not found
	libstdc++.so.6 => /home/mona/anaconda3/envs/hybridpose/lib/libstdc++.so.6 (0x00007fd6e6800000)
	libgcc_s.so.1 => /home/mona/anaconda3/envs/hybridpose/lib/libgcc_s.so.1 (0x00007fd6e6fca000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd6e6400000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fd6e7070000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fd6e6fc5000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fd6e6fbe000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fd6e6fb9000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fd6e6ed2000)

and

(hybridpose) mona@ada:~/HybridPose$ find . -type d | grep lib
./lib
./lib/datasets
./lib/datasets/__pycache__
./lib/__pycache__
./lib/regressor
./lib/regressor/DataStructure
./lib/regressor/LinearAlgebra
./lib/regressor/eigen
./lib/regressor/__pycache__
./lib/regressor/Operation
./lib/ransac_voting_gpu_layer
./lib/ransac_voting_gpu_layer/__pycache__
./lib/ransac_voting_gpu_layer/build
./lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310
./lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/src
./lib/ransac_voting_gpu_layer/build/lib.linux-x86_64-cpython-310
./lib/ransac_voting_gpu_layer/src

I tried giving the pytorch path but still the ldd doesn’t find torch

(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ python setup.py clean
running clean
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ python setup.py build_ext --inplace -L /home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/lib
running build_ext
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:502: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
  warnings.warn(msg.format('we could not find ninja.'))
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:424: UserWarning: There are no g++ version bounds defined for CUDA version 11.8
  warnings.warn(f'There are no {compiler_name} version bounds defined for CUDA version {cuda_str_version}')
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ cd ../..
(hybridpose) mona@ada:~/HybridPose$ ldd lib/ransac_voting_gpu_layer/ransac_voting.cpython-310-x86_64-linux-gnu.so 
	linux-vdso.so.1 (0x00007fff1f7f0000)
	libc10.so => not found
	libtorch_cpu.so => not found
	libtorch_python.so => not found
	libcudart.so.11.0 => /usr/local/cuda-11.8/lib64/libcudart.so.11.0 (0x00007fbaac600000)
	libc10_cuda.so => not found
	libstdc++.so.6 => /home/mona/anaconda3/envs/hybridpose/lib/libstdc++.so.6 (0x00007fbaac200000)
	libgcc_s.so.1 => /home/mona/anaconda3/envs/hybridpose/lib/libgcc_s.so.1 (0x00007fbaac9e0000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fbaabe00000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fbaaca86000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fbaac9db000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fbaac9d4000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fbaac9cf000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fbaac8e8000)
(hybridpose) mona@ada:~/HybridPose$ LD_LIBRARY_PATH=lib/regressor:$LD_LIBRARY_PATH python src/train_core.py
Traceback (most recent call last):
  File "/home/mona/HybridPose/src/train_core.py", line 16, in <module>
    from trainers.coretrainer import CoreTrainer
  File "/home/mona/HybridPose/./trainers/coretrainer.py", line 10, in <module>
    from lib.ransac_voting_gpu_layer.ransac_voting_gpu import ransac_voting_layer_v3
  File "/home/mona/HybridPose/lib/ransac_voting_gpu_layer/ransac_voting_gpu.py", line 2, in <module>
    import lib.ransac_voting_gpu_layer.ransac_voting as ransac_voting
ImportError: /home/mona/HybridPose/lib/ransac_voting_gpu_layer/ransac_voting.cpython-310-x86_64-linux-gnu.so: undefined symbol: _ZN3c106detail19maybe_wrap_dim_slowEllb

Also, tried with gcc-10 no help

(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ CC=gcc-10 CXX=g++-10 python setup.py build_ext --inplace
running build_ext
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:502: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
  warnings.warn(msg.format('we could not find ninja.'))
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:424: UserWarning: There are no g++-10 version bounds defined for CUDA version 11.8
  warnings.warn(f'There are no {compiler_name} version bounds defined for CUDA version {cuda_str_version}')

I installed ninja and solved the problem (hopefully I am not underestimating the problem).


(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ sudo apt install ninja-build
[sudo] password for mona: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  blender-data cuda-cccl-11-7 cuda-command-line-tools-11-7 cuda-compiler-11-7 cuda-cudart-11-7 cuda-cudart-dev-11-7 cuda-cuobjdump-11-7 cuda-cupti-11-7 cuda-cupti-dev-11-7 cuda-cuxxfilt-11-7 cuda-demo-suite-11-7 cuda-documentation-11-7 cuda-driver-dev-11-7 cuda-gdb-11-7 cuda-libraries-11-7 cuda-libraries-dev-11-7 cuda-memcheck-11-7 cuda-nsight-11-7 cuda-nsight-compute-11-7
  cuda-nsight-systems-11-7 cuda-nvcc-11-7 cuda-nvdisasm-11-7 cuda-nvml-dev-11-7 cuda-nvprof-11-7 cuda-nvprune-11-7 cuda-nvrtc-11-7 cuda-nvrtc-dev-11-7 cuda-nvtx-11-7 cuda-nvvp-11-7 cuda-runtime-11-7 cuda-sanitizer-11-7 cuda-toolkit-11-7 cuda-toolkit-11-7-config-common cuda-tools-11-7 cuda-visual-tools-11-7 fonts-dejavu gds-tools-11-7 libcublas-11-7 libcublas-dev-11-7
  libcufft-11-7 libcufft-dev-11-7 libcufile-11-7 libcufile-dev-11-7 libcurand-11-7 libcurand-dev-11-7 libcusolver-11-7 libcusolver-dev-11-7 libcusparse-11-7 libcusparse-dev-11-7 libdcmtk16 libembree3-3 libjemalloc2 liblog4cplus-2.0.5 libnpp-11-7 libnpp-dev-11-7 libnvidia-egl-wayland1 libnvjpeg-11-7 libnvjpeg-dev-11-7 libopencolorio1v5 libopenimageio2.2 libopenvdb8.1
  libosdcpu3.4.4 libpugixml1v5 libspnav0 libsquish0 nsight-compute-2022.2.1 nsight-systems-2022.1.3
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  ninja-build
0 upgraded, 1 newly installed, 0 to remove and 355 not upgraded.
Need to get 111 kB of archives.
After this operation, 358 kB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu jammy/universe amd64 ninja-build amd64 1.10.1-1 [111 kB]
Fetched 111 kB in 0s (355 kB/s)       
Selecting previously unselected package ninja-build.
(Reading database ... 445437 files and directories currently installed.)
Preparing to unpack .../ninja-build_1.10.1-1_amd64.deb ...
Unpacking ninja-build (1.10.1-1) ...
Setting up ninja-build (1.10.1-1) ...
Processing triggers for man-db (2.10.2-1) ...
^[[A(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ ninja --version
1.10.1
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ export CMAKE_CUDA_HOST_COMPILER=/usr/bin/g++-11
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$ python setup.py clean
running clean
(hybridpose) mona@ada:~/HybridPose/lib/ransac_voting_gpu_layer$  python setup.py build_ext --inplace
running build_ext
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/utils/cpp_extension.py:424: UserWarning: There are no g++ version bounds defined for CUDA version 11.8
  warnings.warn(f'There are no {compiler_name} version bounds defined for CUDA version {cuda_str_version}')
building 'ransac_voting' extension
creating /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310
creating /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/src
Emitting ninja build file /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/2] c++ -MMD -MF /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/src/ransac_voting.o.d -pthread -B /home/mona/anaconda3/envs/hybridpose/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/mona/anaconda3/envs/hybridpose/include -fPIC -O2 -isystem /home/mona/anaconda3/envs/hybridpose/include -fPIC -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/torch/csrc/api/include -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/TH -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/THC -I/usr/local/cuda-11.8/include -I/home/mona/anaconda3/envs/hybridpose/include/python3.10 -c -c /home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting.cpp -o /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/src/ransac_voting.o -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1011"' -DTORCH_EXTENSION_NAME=ransac_voting -D_GLIBCXX_USE_CXX11_ABI=0 -std=c++17
[2/2] /usr/local/cuda-11.8/bin/nvcc  -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/torch/csrc/api/include -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/TH -I/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/THC -I/usr/local/cuda-11.8/include -I/home/mona/anaconda3/envs/hybridpose/include/python3.10 -c -c /home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu -o /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/src/ransac_voting_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1011"' -DTORCH_EXTENSION_NAME=ransac_voting -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_89,code=compute_89 -gencode=arch=compute_89,code=sm_89 -std=c++17
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu: In function ‘at::Tensor generate_hypothesis_launcher(at::Tensor, at::Tensor, at::Tensor)’:
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:75:53: warning: ‘at::DeprecatedTypeProperties& at::Tensor::type() const’ is deprecated: Tensor.type() is deprecated. Instead use Tensor.options(), which in many cases (e.g. in a constructor) is a drop-in replacement. If you were using data from type(), that is now available from Tensor itself, so instead of tensor.type().scalar_type(), use tensor.scalar_type() instead and instead of tensor.type().backend() use tensor.device(). [-Wdeprecated-declarations]
   75 |     auto hypo_pts = at::zeros({hn,vn,2}, direct.type());
      |                                          ~~~~~~~~~~~^~
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:225:1: note: declared here
  225 |   DeprecatedTypeProperties & type() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:76:102: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
   76 |     generate_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                      ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:76:126: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
   76 |     generate_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                              ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:76:146: warning: ‘T* at::Tensor::data() const [with T = int]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
   76 |     generate_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                  ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:76:172: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
   76 |     generate_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                            ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu: In function ‘void voting_for_hypothesis_launcher(at::Tensor, at::Tensor, at::Tensor, at::Tensor, float)’:
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:159:104: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  159 |     voting_for_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                        ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:159:128: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  159 |     voting_for_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                                ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:159:154: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  159 |     voting_for_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                          ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:159:187: warning: ‘T* at::Tensor::data() const [with T = unsigned char]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  159 |     voting_for_hypothesis_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                                           ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu: In function ‘at::Tensor generate_hypothesis_vanishing_point_launcher(at::Tensor, at::Tensor, at::Tensor)’:
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:255:53: warning: ‘at::DeprecatedTypeProperties& at::Tensor::type() const’ is deprecated: Tensor.type() is deprecated. Instead use Tensor.options(), which in many cases (e.g. in a constructor) is a drop-in replacement. If you were using data from type(), that is now available from Tensor itself, so instead of tensor.type().scalar_type(), use tensor.scalar_type() instead and instead of tensor.type().backend() use tensor.device(). [-Wdeprecated-declarations]
  255 |     auto hypo_pts = at::zeros({hn,vn,3}, direct.type());
      |                                          ~~~~~~~~~~~^~
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:225:1: note: declared here
  225 |   DeprecatedTypeProperties & type() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:256:118: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  256 |     generate_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                      ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:256:142: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  256 |     generate_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                              ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:256:162: warning: ‘T* at::Tensor::data() const [with T = int]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  256 |     generate_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                  ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:256:188: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  256 |     generate_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                                            ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu: In function ‘void voting_for_hypothesis_vanishing_point_launcher(at::Tensor, at::Tensor, at::Tensor, at::Tensor, float)’:
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:343:120: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  343 |     voting_for_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                        ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:343:144: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  343 |     voting_for_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:343:170: warning: ‘T* at::Tensor::data() const [with T = float]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  343 |     voting_for_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                          ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
/home/mona/HybridPose/lib/ransac_voting_gpu_layer/src/ransac_voting_kernel.cu:343:203: warning: ‘T* at::Tensor::data() const [with T = unsigned char]’ is deprecated: Tensor.data<T>() is deprecated. Please use Tensor.data_ptr<T>() instead. [-Wdeprecated-declarations]
  343 |     voting_for_hypothesis_vanishing_point_kernel<<<bdim,tdim>>>(
      |                                                                                                                                                                                                           ^ 
/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/include/ATen/core/TensorBody.h:247:1: note: declared here
  247 |   T * data() const {
      | ^ ~~
g++ -pthread -B /home/mona/anaconda3/envs/hybridpose/compiler_compat -shared -Wl,-rpath,/home/mona/anaconda3/envs/hybridpose/lib -Wl,-rpath-link,/home/mona/anaconda3/envs/hybridpose/lib -L/home/mona/anaconda3/envs/hybridpose/lib -Wl,-rpath,/home/mona/anaconda3/envs/hybridpose/lib -Wl,-rpath-link,/home/mona/anaconda3/envs/hybridpose/lib -L/home/mona/anaconda3/envs/hybridpose/lib /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/./src/ransac_voting.o /home/mona/HybridPose/lib/ransac_voting_gpu_layer/build/temp.linux-x86_64-cpython-310/./src/ransac_voting_kernel.o -L/home/mona/anaconda3/envs/hybridpose/lib/python3.10/site-packages/torch/lib -L/usr/local/cuda-11.8/lib64 -lc10 -ltorch -ltorch_cpu -ltorch_python -lcudart -lc10_cuda -ltorch_cuda -o build/lib.linux-x86_64-cpython-310/ransac_voting.cpython-310-x86_64-linux-gnu.so
copying build/lib.linux-x86_64-cpython-310/ransac_voting.cpython-310-x86_64-linux-gnu.so -> 

(hybridpose) mona@ada:~/HybridPose$ LD_LIBRARY_PATH=lib/regressor:$LD_LIBRARY_PATH python src/train_core.py
number of model parameters: 12959563
Testing...
> /home/mona/HybridPose/trainers/coretrainer.py(256)test()
-> if cuda:
(Pdb) quit()
Traceback (most recent call last):
  File "/home/mona/HybridPose/src/train_core.py", line 106, in <module>
    trainer.test(0)
  File "/home/mona/HybridPose/./trainers/coretrainer.py", line 256, in test
    if cuda:
  File "/home/mona/HybridPose/./trainers/coretrainer.py", line 256, in test
    if cuda:
  File "/home/mona/anaconda3/envs/hybridpose/lib/python3.10/bdb.py", line 90, in trace_dispatch
    return self.dispatch_line(frame)
  File "/home/mona/anaconda3/envs/hybridpose/lib/python3.10/bdb.py", line 115, in dispatch_line
    if self.quitting: raise BdbQuit
bdb.BdbQuit