最近因为在尝试NeuralRecon复现,安装torchsparse的时候遇到了诸多问题。逛csdn的时候发现相关资料较少,所以在这里开帖一一记录~
1. 系统环境
系统:WSL-Linux (Windows上官方的linux虚拟机)
显卡:GTX1660Ti笔记本版
cudatoolkit: 10.2.89
选择WSL的原因属实是Windows Anaconda安装torchsparse一直报错且不知道原因(后来发现应该也是可以安装的)。也尝试过Oracle VirtualBox,但是发现如果要用物理机的显卡就需要gpu直通,看起来太复杂所以放弃了。最后发现windows居然有官方的虚拟机。
设置 WSL 开发环境 | Microsoft Docs
2. 安装问题
2.0. torchsparse相关信息
https://github.com/mit-han-lab/torchsparse
torchsparse是由MIT与Cornell的研究人员共同编写的一个稀疏卷积网络。原论文如下:
TorchSparse: Efficient Point Cloud Inference Engine (mit.edu)
2.1. subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1.
网上的答案大多是改成--v,或者--version,但之后就会缺.o编译文件。我本来以为这是个绝路,没想到经过gcc/g++降级,以及在安装时使用:
MAX_JOBS=2 pip install -v git+https://gitclone.com/github.com/mit-han-lab/torchsparse.git
问题就奇迹般消失了。
gcc/g++降级是因为compile log里面说unsupported GNU version. gcc versions later than 8 are not supported,所以将gcc降级到了7。注意gcc与g++都要降级。
linux gcc和g++降级方法_南洲.的博客-CSDN博客_g++降级
不得不说,查看compile log真的是一个好习惯。
2.2. 安装后运行demo.py提示没有NVIDIA GPU
WSL系统中,如果本身的windows系统有gpu的话,WSL系统也是可以共享gpu的。
上述提示的原因可能是安装torchsparse的时候,没有发现cudatoolkit,所以安装了cpu版本的torchsparse。安装操作非常简单,只需要在WSL中安装NVIDIA_cuda_toolkit (自己找合适版本)。
Ubuntu 20.04 安装 CUDA Toolkit 的三种方式 - klchang - 博客园 (cnblogs.com)
推荐方式二。如果没有图形界面就不需要装图形驱动。
这个NVIDIA_cuda_toolkit与miniconda中装的cudatoolkit似乎是两个东西,但总之,只在miniconda中装了cudatoolkit是没有用的。
2.3. 国内无法访问github
可以使用github的国内镜像。在github.com前加gitclone.com/就可以了。比如https://github.com/mit-han-lab/torchsparse可以改成https://gitclone.com/github.com/mit-han-lab/torchsparse
先码住,之后的慢慢写啦。