从pytorch源上进行编译安装
前提条件sd最好是16Gb或者32Gb的,然后安装好系统后,对系统进行更新。
增加交换区的大小到2G
首先通过命令打开交换区设置文件
sudo vim /etc/dphys-swapfile
接着找出常量CONF_SWAPSEIZE,把后面的默认的100改成2048。
然后执行以下命令激活交换文件系统:
sudo /etc/init.d/dphys-swapfile stop
sudo /etc/init.d/dphys-swapfile start
接着安装依赖包
sudo apt-get install libopenblas-dev cython3 libatlas-dev m4 libblas-dev cmake
创建虚拟环境
这个时候我们可以用venv创建需要的虚拟环境,把pytorch跟其他python包隔离。可以通过一下命令:
python3 -m venv pytorch
cd pytorch/bin
source activate
这个时候我们可以在命令窗口的提示符前面见到(pytorch),这样代表我们已经进入了虚拟环境了。
下载pytorch源代码
这个时候我们可以用git下载源代码了。
使用git下载的过程可能会比较慢,我们也可以在本地下载好然后传输到树莓派上。
git clone --recursive https://github.com/pytorch/pytorch
打开pytorch安装目录:
cd pytorch
切换到我们想安装的版本,例如v1.0.1:
git checkout tags/v1.0.1 -b build
git submodule update --init --recursive
编译pytorch
这个时候我们就可以开始编译pytorch。
但是在编译pytorch之前,我们还是需要安装依赖的python包。安装依赖包:
pip install -r requirements.txt
设置环境变量
这一步非常重要,如果环境变量设置不正确,编译的过程会报错。例如:
Failed to run 'bash tools/build_pytorch_libs.sh --use-cuda --use-nnpack --use mkldnn --use qnnpack caffe2'
我们可以利用export命令,设置所需要的环境变量,例如我们把cuda支持去掉,因为树莓派不支持cuda。
export NO_CUDA=1
export NO_DISTRIBUTED=1
export NO_MKLDNN=1
export NO_NNPACK=1
export NO_QNNPACK=1
接着我们就可以利用命令:
python setup build
对pytorch进行编译,这个过程需要需要耗费几个小时。
当编译完成后,我们就可以利用命令进行安装了
python setup install
这样pytorch就完成安装了。