Ubuntu16.04下pytorch版本中pointnet2_ops_lib的配置

  • Post author:
  • Post category:其他





前言

Ubuntu16.04系统下基于pytorch的代码环境需要配置pointnet2_ops_lib。笔者虚拟环境配置为Ubuntu16.04、pytorch1.8.2、cuda11.1、python3.6。pointnet2_ops_lib源码来自

erikwijmans/Pointnet2_PyTorch

,配置要求在作者书写的README里说得很清楚了,仔细阅读。总体来说,虚拟环境里缺啥装啥,记录下遇到的问题及解决方法。




一、No module named ‘pointnet2_ops’

刚开始跑代码的时候,报错:No module named ‘pointnet2_ops’,搜索以后才知道这个计算子需要单独配置。在上述链接处下载代码压缩包Pointment2_PyTorch-master.zip,解压后放入相关代码文件夹里。

进入创建好的虚拟环境(笔者:py36_pt182),cd到pointnet2_ops_lib文件夹所在目录(笔者:/EdgeDetect/Pointment2_PyTorch-master),运行命令:

pip install -r requirements.txt

缺啥装啥。



二、Failed building wheel for grpcio

requirements.txt里前面需要的依赖包,查漏补缺,几乎用pip install都能解决,笔者遇到的第一个非pip install可以解决的问题:Failed building wheel for grpcio。

在这里插入图片描述

解决办法:笔者的pip版本比较低,version 9.0.1,终端上一直有黄色字体提醒我升级pip版本,我就尝试升级了下pip版本:

pip install --upgrade pip

然后再继续install requirements.txt,这里已经安装过的模块,会显示requirement already satisfied,会继续往下跑代码。

pip版本升级后,就可以下载grpcio了。

在这里插入图片描述



三、nvcc fatal: Unknown option ‘-generate-dependencies-with-compile’

本来一路顺畅,突然一大片红字出现,找了半天才看到问题:nvcc fatal: Unknown option ‘-generate-dependencies-with-compile’ 和 RuntimeError: Error compiling objects for extension。

在这里插入图片描述

在这里插入图片描述

原因:

虚拟环境使用anaconda配置的是cudatoolkit11.1.74,笔者Ubuntu本地local cuda 软链接指向的是cuda8.0,所以在编译的时候(runtime)出错了。需要将本地cuda软链接指向cuda11.1。

解决方法:

参照

Ubuntu16.04装CUDA和cuDNN

下载cuda11.1.1(这是笔者需要的版本),安装步骤有区别。参考

Ubuntu18.04安装CUDA11.0 Installation failed. See log at /var/log/cuda-installer.log for details.

来安装。

在这里插入图片描述

这里填写accept。

在这里插入图片描述

这里用回车键取消driver前的X。

在这里插入图片描述

方向下键选Install,回车。

在这里插入图片描述

安装cuda11.1成功。安装后,cd到local查看下cuda文件夹(会有cuda11.1文件夹)和目前软链接指向(‘stat cuda’)。

在这里插入图片描述

接下来更改cuda软链接指向cuda11.1。

sudo rm -rf /usr/local/cuda       #删除软链接
sudo ln -s /usr/local/cuda-11.1 /usr/local/cuda    #重新建立指向cuda11.1的软链接

查看此时的cuda软链接指向。

在这里插入图片描述

最后,全程就没问题啦~~

在这里插入图片描述

在这里插入图片描述

Successfully!!!!!




相关


  1. cuda和cudatoolkit

    ,这里说得很清楚二者的关系以及使用多版本cuda的方法。
  2. 给虚拟环境指定cuda,看了下,感觉很高级,但是没尝试,mark。


    【引路帖】【conda虚拟环境】【cuda】多个cuda版本路径切换




    给虚拟环境指定cuda



版权声明:本文为dreaming_song原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。