POSTECH-CVLab / point-transformer

This is an unofficial implementation of the Point Transformer paper.
493 stars 96 forks source link

How to compile pointops_cuda? #56

Open whuhxb opened 2 years ago

whuhxb commented 2 years ago

When I compile the pointops_cuda, I met the following bugs.

srun -p RTXA6Kq -n 1 -w node10 python setup.py install No CUDA runtime is found, using CUDA_HOME='/cm/shared/apps/cuda11.1/toolkit/11.1.0' running install running bdist_egg running egg_info creating pointops.egg-info writing pointops.egg-info/PKG-INFO writing dependency_links to pointops.egg-info/dependency_links.txt writing top-level names to pointops.egg-info/top_level.txt writing manifest file 'pointops.egg-info/SOURCES.txt' reading manifest file 'pointops.egg-info/SOURCES.txt' writing manifest file 'pointops.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_ext building 'pointops_cuda' extension creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6 creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/knnquery creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/sampling creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/grouping creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/interpolation creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/subtraction creating /export/home/hanxiaobing/Documents/PlaneNet_PlaneRCNN/DGCNN_PointNet2/SensatUrban/contrastBoundary/pytorch/lib/pointops/build/temp.linux-x86_64-3.6/src/aggregation Traceback (most recent call last): File "setup.py", line 34, in cmdclass={'build_ext': BuildExtension} File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/init.py", line 153, in setup return distutils.core.setup(**attrs) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/core.py", line 148, in setup dist.run_commands() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/dist.py", line 955, in run_commands self.run_command(cmd) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/install.py", line 67, in run self.do_egg_install() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/install.py", line 109, in do_egg_install self.run_command('bdist_egg') File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/bdist_egg.py", line 164, in run cmd = self.call_command('install_lib', warn_dir=0) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/bdist_egg.py", line 150, in call_command self.run_command(cmdname) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/install_lib.py", line 11, in run self.build() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/command/install_lib.py", line 107, in build self.run_command('build_ext') File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/cmd.py", line 313, in run_command self.distribution.run_command(command) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/build_ext.py", line 79, in run _build_ext.run(self) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/command/build_ext.py", line 339, in run self.build_extensions() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 580, in build_extensions build_ext.build_extensions(self) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/command/build_ext.py", line 448, in build_extensions self._build_extensions_serial() File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/command/build_ext.py", line 473, in _build_extensions_serial self.build_extension(ext) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/setuptools/command/build_ext.py", line 196, in build_extension _build_ext.build_extension(self, ext) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/distutils/command/build_ext.py", line 533, in build_extension depends=ext.depends) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 411, in unix_wrap_ninja_compile cuda_post_cflags = unix_cuda_flags(cuda_post_cflags) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 336, in unix_cuda_flags cflags + _get_cuda_arch_flags(cflags)) File "/export/home/hanxiaobing/anaconda3/envs/pytorch-Point-Transformer/lib/python3.6/site-packages/torch/utils/cpp_extension.py", line 1316, in _get_cuda_arch_flags raise ValueError("Unknown CUDA arch ({}) or GPU not supported".format(arch)) ValueError: Unknown CUDA arch (8.0) or GPU not supported

I have used cuda11.1. How to solve?

L-Reichardt commented 2 years ago

Try TORCH_CUDA_ARCH_LIST="8.6" MAX_JOBS=1 FORCE_CUDA=1 python3 setup.py install Change 8.6 to your GPU architecture according to.

sm_86 is equal to 8.6

alexrosen45 commented 1 month ago

Try #82