POSTECH-CVLab/point-transformer

How to compile pointops_cuda?

whuhxb opened this issue · 2 comments

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?

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