本文转载于Ray的pytorch编译安装,在此基础上做了小小的修正。
环境:
MAC OSX 10.13.6 2018 MacBook Pro 15
CUDA 9.2
cuDNN 7.2
显卡:技嘉 Gaming box 1070
github上别人编译安装好的GPU版Pytorch:GPU-Pytorch。别人编译的和自己机器不是很兼容,所以需要自己来编译一下。
1. Conda安装python环境
假设已经安装好了anconda,这里我需要的是python3.6,所以直接conda一个环境就可以了。
conda create -n pytorch_gpu_0.4 python=3.6
环境创建好之后,激活一下环境,在这个环境下进行操作。
source activate pytorch_gpu_0.4
2. 下载pytorch源码
需要下载自己需要版本的pytorch源码,这里我需要的是0.4版的,所以把0.4版的clone下来。
git clone --branch v0.4.1 https://github.com/pytorch/pytorch.git
然后进入到文件夹里
cd <你自己的目录>/pytorch
最开始clone的时候,submodule的内容并不会自动下载下来,如果不下载下来子模块的文件的话,会缺少相应的文件。
此时,只需执行如下命令:
git submodule update --init
然后稍微等一会就下完了。
3. 检查Clang版本
我的Clang版本是9.0,当前的CUDA与Clang版本中的CommandLineTools兼容。如果不兼容,需要去安装XCODE 9的CommandLineTools。通过这条命令查看clang版本:
$ clang --version
Apple LLVM version 9.0.0 (clang-900.0.39.2)
4. 编译Pytorch
然后开始编译GPU版的pytorch,这里我假设你的CUDA之类的已经都安装好了。
还有一个需要注意的是,需要安装一下依赖包:
conda install numpy pyyaml mkl mkl-include setuptools cmake cffi typing
然后直接运行下面这些命令,
export CMAKE_PREFIX_PATH=<换成你的anconda根目录 >,下面的命令是我的路径
export CMAKE_PREFIX_PATH=/Users/iimmortall/ProgramFiles/anaconda3
MACOSX_DEPLOYMENT_TARGET=10.9 CC=clang CXX=clang++ python setup.py install
大约20分钟左右就编译完成了。
使用源码安装 pytorch的时候,是没有安装 torchvision的。所以也需要安装torchvision
pip install torchvision
5.测试Pytorch
我也不知道为什么会成为0.5的版本。。。。。。估计是下载源码的时候出错了。
6. 打包生成whl
cd 到pytorch项目中
python setup.py bdist_wheel
生成的whl文件在
/pytorch项目/dist/
我的机器上生成的是 torch-0.5.0a0+a24163a-cp36-cp36m-macosx_10_7_x86_64.whl
Reference
1、github pytorch的官方安装教程pytorch的官方安装教程
2、大佬的编译教程Ray的pytorch编译安装