Windows下从源码编译¶
环境准备¶
- Windows 7/8/10 专业版/企业版 (64bit) (GPU版本支持CUDA 8.0/9.0/10.0, 且仅支持单卡)
- Python 版本 2.7/3.5.1+/3.6/3.7 (64 bit)
- pip 或 pip3 版本 9.0.1+ (64 bit)
- Visual Studio 2015 Update3
选择CPU/GPU¶
- 如果您的计算机没有 NVIDIA® GPU,请编译CPU版的PaddlePaddle
- 如果您的计算机有NVIDIA® GPU,并且满足以下条件,推荐编译GPU版的PaddlePaddle
- CUDA 工具包8.0配合cuDNN v7.1+, 9.0/10.0配合cuDNN v7.3+
- GPU运算能力超过1.0的硬件设备
安装步骤¶
在Windows的系统下提供1种编译方式:
- 本机编译(暂不支持NCCL,分布式等相关功能)
本机编译¶
安装必要的工具 cmake,git 以及 python :
cmake 需要3.5 及以上版本, 可在官网下载,并添加到环境变量中。
python 需要2.7 及以上版本, 可在官网下载。
需要安装
numpy, protobuf, wheel
。python2.7下, 请使用pip
命令; 如果是python3.x, 请使用pip3
命令。* 安装 numpy 包可以通过命令 `pip install numpy` 或 `pip3 install numpy` * 安装 protobuf 包可以通过命令 `pip install protobuf` 或 `pip3 install protobuf` * 安装 wheel 包可以通过命令 `pip install wheel` 或 `pip3 install wheel`
git可以在官网下载,并添加到环境变量中。
将PaddlePaddle的源码clone在当下目录下的Paddle的文件夹中,并进入Padde目录下:
git clone https://github.com/PaddlePaddle/Paddle.git
cd Paddle
切换到较稳定release分支下进行编译:
git checkout [分支名]
例如:
git checkout release/1.2
注意:python3.6、python3.7版本从release/1.2分支开始支持
创建名为build的目录并进入:
mkdir build
cd build
执行cmake:
具体编译选项含义请参见编译选项表
编译CPU版本PaddlePaddle:
For Python2:
cmake .. -G "Visual Studio 14 2015 Win64" -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIRS} -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DWITH_FLUID_ONLY=ON -DWITH_GPU=OFF -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release
For Python3:
cmake .. -G "Visual Studio 14 2015 Win64" -DPY_VERSION=3.5 -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIRS} -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DWITH_FLUID_ONLY=ON -DWITH_GPU=OFF -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release
编译GPU版本PaddlePaddle:
For Python2:
cmake .. -G "Visual Studio 14 2015 Win64" -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIRS} -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DWITH_GPU=ON -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=${CUDA_TOOLKIT_ROOT_DIR}
For Python3:
cmake .. -G "Visual Studio 14 2015 Win64" -DPY_VERSION=3.5 -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIRS} -DPYTHON_LIBRARY=${PYTHON_LIBRARY} -DPYTHON_EXECUTABLE=${PYTHON_EXECUTABLE} -DWITH_GPU=ON -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=${CUDA_TOOLKIT_ROOT_DIR}
注意:上述命令中对应的参数应修改为你所在设备上的对应路径,或者将它们加入环境变量中,以编译GPU版本的PaddlePaddle的python3.6版本为例,
-DPY_VERSION 为python版本 -DPYTHON_INCLUDE_DIR 为对应版本python的include目录 -DPYTHON_LIBRARY 为对应版本python的lib目录 -DPYTHON_EXECUTABLE 为对应版本python的可执行程序的路径 -DCUDA_TOOLKIT_ROOT_DIR 为安装cuda的根目录
将相关路径加入环境变量中后,这个例子所用cmake命令为:
cmake .. -G "Visual Studio 14 2015 Win64" -DPY_VERSION=3.6 -DWITH_GPU=ON -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release
若设备上存在多个版本python,或者多个版本cuda,或者没有将路径加入环境变量,这个例子所用cmake命令为:
cmake .. -G "Visual Studio 14 2015 Win64" -DPY_VERSION=3.6 -DPYTHON_INCLUDE_DIR=C:\\Python36\\include -DPYTHON_LIBRARY=C:\\Python36\\Lib -DPYTHON_EXECUTABLE=C:\\Python36\\python3.exe -DWITH_GPU=ON -DWITH_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCUDA_TOOLKIT_ROOT_DIR=D:\\cuda
部分第三方依赖包(openblas,snappystream)目前需要用户自己提供预编译版本,也可以到
https://github.com/wopeizl/Paddle_deps
下载预编译好的文件, 将整个third_party
文件夹放到build
目录下.使用Blend for Visual Studio 2015 打开
paddle.sln
文件,选择平台为x64
,配置为Release
,先编译third_party模块,然后编译其他模块编译成功后进入
\paddle\build\python\dist
目录下找到生成的.whl
包:cd \paddle\build\python\dist
在当前机器或目标机器安装编译好的
.whl
包:pip install -U(whl包的名字)
或pip3 install -U(whl包的名字)
恭喜,至此您已完成PaddlePaddle的编译安装
验证安装¶
安装完成后您可以使用 python
或 python3
进入python解释器,输入import paddle.fluid as fluid
,再输入
fluid.install_check.run_check()
如果出现Your Paddle Fluid is installed succesfully!
,说明您已成功安装。
如何卸载¶
请使用以下命令卸载PaddlePaddle:
- CPU版本的PaddlePaddle:
pip uninstall paddlepaddle
或pip3 uninstall paddlepaddle
- GPU版本的PaddlePaddle:
pip uninstall paddlepaddle-gpu
或pip3 uninstall paddlepaddle-gpu
使用Docker安装PaddlePaddle的用户,请进入包含PaddlePaddle的容器中使用上述命令,注意使用对应版本的pip