最近实验需要使用ps_roi_pooling,下载相关源码后发现高版本的torch因为cpp_extension的更新无法直接运行,改代码太麻烦耗时太久,所以直接配了一个低版本的pytorch。记录一下。
配置如下:
- python3.6
- pytorch0.3.1(0.4.0以上版本会报错)
- cuda 10.0(经验证,cuda8.0版本以上皆可)
step 1.安装cuda(不赘述)
step 2.创建一个新的环境
conda create -n pytorch_031 python==3.6
step 3. 进入环境
conda/source activate pytorch_031
step 4.配置环境
在终端输入如下指令:
进入pip.conf文件并开始编辑,输入"i"开始编辑,输入如下内容
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
按"ESC"退出编辑,然后输入":wq"再按回车保存并退出文件。
step 5.安装torch及torchvision
在终端输入一下命令,执行安装
pip install torch==0.3.1 torchvision==0.2.0
以上即完成了安装。
在运行程序时,按照README.txt中的指示,先安装依赖的库
pip install -r requirements.txt
然后输入一下命令,即可对程序进行编译
sh make.sh
完成编译后,程序会由ps_roi_pooling相关的c代码和cuda代码生成ps_roi_pooling.so,即可使用。
在这个过程中可能会出现报错:
*******/model/psroi_pooling/src/psroi_pooling.cu.o:没有那个文件或目录
这是因为nvcc和gcc的版本不对,或没有安装。使用以下指令进行安装即可解决:
sudo apt install nvidia-cuda-toolkit