From 1371bae0de5132a6c475bb34d8c5af19db28f09c Mon Sep 17 00:00:00 2001 From: wopeizl Date: Tue, 4 Dec 2018 00:20:16 +0800 Subject: [PATCH] Windows/support (#415) * add windows compile, install guide support * adjust the format * correct the format test=develop * fix the style test=develop * fix issue test=develop * disable the windows cpp-reference doc temporarily test=develop * restore the inference doc test=develop --- .../install/compile/compile_Windows.md | 103 ++++++++++++++++++ .../install/compile/fromsource.rst | 1 + .../install/install_Windows.md | 22 ++-- .../howto/inference/windows_cpp_inference.md | 77 ++++--------- 4 files changed, 141 insertions(+), 62 deletions(-) create mode 100644 doc/fluid/beginners_guide/install/compile/compile_Windows.md diff --git a/doc/fluid/beginners_guide/install/compile/compile_Windows.md b/doc/fluid/beginners_guide/install/compile/compile_Windows.md new file mode 100644 index 000000000..c1359d8c6 --- /dev/null +++ b/doc/fluid/beginners_guide/install/compile/compile_Windows.md @@ -0,0 +1,103 @@ +*** +# **Windows下从源码编译** + +本说明将介绍如何在*64位台式机或笔记本电脑*以及Windows 10系统下编译PaddlePaddle,我们支持的Windows系统需满足以下要求: + +* Windows 10 家庭版/专业版/企业版 +* Visual Studio 2015 Update3 + +## 确定要编译的版本 +* **仅支持CPU的PaddlePaddle**。 + + + +## 选择如何编译 +我们在Windows的系统下提供1种编译方式: + +* 直接本机源码编译 + +由于在本机上的情况更加复杂,因此我们只支持特定的系统。 + + + + +### ***本机编译*** + +**请严格按照以下指令顺序执行** + +1. 检查您的计算机和操作系统是否符合我们支持的编译标准 + + * Windows 10 家庭版/专业版/企业版 + + * Visual Studio 2015 Update3 + +2. 安装必要的工具 cmake,git 以及 python : + + > cmake 需要3.0 及以上版本, 可以在官网进行下载,并添加到环境变量中。 [下载地址](https://cmake.org/download/) + + > git可以在官网进行下载,并添加到环境变量中。 [下载地址](https://gitforwindows.org/) + + > python 需要2.7 及以上版本, 同时确保 `numpy, protobuf, wheel` 等模块得到安装 [下载地址](https://www.python.org/download/releases/2.7/) + + * 安装 numpy 包可以通过命令 `pip install numpy` 或 `pip3 install numpy` + + * 安装 protobuf 包可以通过命令 `pip install protobuf` 或 `pip3 install protobuf` + + * 安装 wheel 包可以通过命令 `pip install wheel` 或 `pip3 install wheel` + +3. 将PaddlePaddle的源码clone在当下目录下的Paddle的文件夹中,并进入Padde目录下: + + - `git clone https://github.com/PaddlePaddle/Paddle.git` + - `cd Paddle` + +4. 切换到较稳定release分支下进行编译(支持1.2.x及以上版本): + + - `git checkout release/x.x.x` + +5. 创建名为build的目录并进入: + + - `mkdir build` + - `cd build` + +6. 执行cmake: + + >具体编译选项含义请参见[编译选项表](../Tables.html/#Compile) + + + * 对于需要编译**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` + + > 如果遇到`Could NOT find PROTOBUF (missing: PROTOBUF_LIBRARY PROTOBUF_INCLUDE_DIR)`可以重新执行一次cmake指令 + +7. 部分第三方依赖包(openblas,snappystream)目前需要用户自己提供预编译版本,也可以到 `https://github.com/wopeizl/Paddle_deps` 下载预编译好的文件, 将整个 `third_party` 文件夹放到 `build` 目录下. + +8. 使用Blend for Visual Studio 2015 打开 `paddle.sln` 文件,选择平台为 `x64`,配置为 `Release`,开始编译 + +9. 编译成功后进入 `\paddle\build\python\dist` 目录下找到生成的 `.whl` 包: + + `cd \paddle\build\python\dist` + +10. 在当前机器或目标机器安装编译好的 `.whl` 包: + + `pip install (whl包的名字)` 或 `pip3 install (whl包的名字)` + +恭喜您,现在您已经完成使本机编译PaddlePaddle的过程了。 + + +## ***验证安装*** +安装完成后您可以使用:`python` 进入Python解释器,然后使用 `import paddle.fluid`, 如沒有提示错误,则表明安装成功。 + +## ***如何卸载*** +请使用以下命令卸载PaddlePaddle: + +* ***CPU版本的PaddlePaddle***: `pip uninstall paddlepaddle` 或 `pip3 uninstall paddlepaddle` diff --git a/doc/fluid/beginners_guide/install/compile/fromsource.rst b/doc/fluid/beginners_guide/install/compile/fromsource.rst index 20914c4fe..afa77c3fa 100644 --- a/doc/fluid/beginners_guide/install/compile/fromsource.rst +++ b/doc/fluid/beginners_guide/install/compile/fromsource.rst @@ -11,3 +11,4 @@ compile_Ubuntu.md compile_CentOS.md compile_MacOS.md + compile_Windows.md diff --git a/doc/fluid/beginners_guide/install/install_Windows.md b/doc/fluid/beginners_guide/install/install_Windows.md index e018cb5af..b900048b4 100644 --- a/doc/fluid/beginners_guide/install/install_Windows.md +++ b/doc/fluid/beginners_guide/install/install_Windows.md @@ -12,25 +12,33 @@ * Windows下我们目前仅提供支持CPU的PaddlePaddle。 - ## 选择如何安装 -在Windows系统下请使用我们为您提供的[一键安装包](http://paddle-windows.bj.bcebos.com/1.1/PaddlePaddle-windows-1.1.zip)进行安装 - -> 我们提供的一键安装包将基于Docker为您进行便捷的安装流程 +### ***使用pip安装*** -我们之所以使用**基于Docker的安装方式**,是因为我们在把工具和配置都安装在一个 Docker image 里,这样如果遇到问题,其他人可以复现问题以便帮助。另外,对于习惯使用Windows和MacOS的开发者来说,使用Docker就不用配置交叉编译环境了。需要强调的是:Docker 不会虚拟任何硬件,Docker container 里运行的编译工具实际上都是在本机的 CPU 和操作系统上直接运行的,性能和把编译工具安装在本机运行一样。 +我们暂不提供快速安装的命令,请您按照以下步骤进行安装 +* 首先,**检查您的计算机和操作系统**是否满足以下要求: + + For python2: 使用Python官方下载的python2.7.15 + For python3: 使用Python官方下载的python3.5.x +* Python2.7.x,pip >= 9.0.1 +* Python3.5.x,pip3 >= 9.0.1 + +下面将说明如何安装PaddlePaddle: +* 使用pip install来安装PaddlePaddle: + + ** paddlepaddle 的依赖包 `recordio` 有可能用 `pip` 的默认源无法安装,可以使用 `easy_install recordio` 来安装 ** + ** 对于需要**CPU版本PaddlePaddle**的用户:`pip install paddlepaddle` 或 `pip3 install paddlepaddle` ** +现在您已经完成通过`pip install` 来安装的PaddlePaddle的过程。 -

## ***验证安装*** 安装完成后您可以使用:`python` 或 `python3` 进入python解释器,然后使用`import paddle.fluid` 验证是否安装成功。 -

## ***如何卸载*** 请使用以下命令卸载PaddlePaddle(使用docker安装PaddlePaddle的用户请进入包含PaddlePaddle的容器中使用以下命令): diff --git a/doc/fluid/user_guides/howto/inference/windows_cpp_inference.md b/doc/fluid/user_guides/howto/inference/windows_cpp_inference.md index edb628e6f..f2642b462 100644 --- a/doc/fluid/user_guides/howto/inference/windows_cpp_inference.md +++ b/doc/fluid/user_guides/howto/inference/windows_cpp_inference.md @@ -8,79 +8,50 @@ Windows环境模型预测使用说明 测试环境硬件配置: -| CPU | I7-8700K | -|----------|:-------------:| -| 内存 | 16G | -| 硬盘 | 1T hdd + 256G ssd | -| 显卡 | GTX1080 8G | +| CPU | I7-8700K | +|:---------|:-------------------| +| 内存 | 16G | +| 硬盘 | 1T hdd + 256G ssd | +| 显卡 | GTX1080 8G | -测试环境操作系统使用win10 Version 18.03 版本。下载地址: +测试环境操作系统使用 win10 家庭版本。 ### 环境配置步骤 -**一定要严格按照安装步骤顺序,否则会安装失败!** +**请您严格按照以下步骤进行安装,否则可能会导致安装失败!** -**安装vs2015** +**安装Visual Studio 2015 update3** -安装vs2015,安装选项中选择安装内容时勾选自定义,把关于c,c++,vc++的功能都安装上。下载地址: +安装Visual Studio 2015,安装选项中选择安装内容时勾选自定义,选择安装全部关于c,c++,vc++的功能。 -**安装CUDA8** - -需要去NVIDIA官网[https://www.geforce.cn/drivers](https://www.geforce.cn/drivers) -下载显卡对应的驱动。推荐391版本 -

- -

-安装时需要勾选自定义,勾选安装全部。 - -验证安装需要进入cmd中,输入nvcc -V查看。 -

- -

- -如果有显卡安装驱动,也可以选择直接安装CUDA8.0,[https://developer.nvidia.com/cuda-80-ga2-download-archive](https://developer.nvidia.com/cuda-80-ga2-download-archive) - -**安装CUDNN** - -安装CUDNN只需要将文件中CUDNN -7下的文件复制到对应的CUDA安装目录下。文件名,cudnn-8.0-windows10-x64-v7.zip。这里提供了cudnn -7 -64位的版本。需要其他版本可在[https://developer.nvidia.com/cudnn](https://developer.nvidia.com/cudnn) -下载。 预测demo使用 ------------ -解压Paddle,Release,fluid\_install\_dir压缩包。 +解压Paddle,Release,fluid_install_dir压缩包。 -进入Paddle/paddle/fluid/inference/api/demo\_ci目录,新建build目录并进入,然后使用cmake生成vs2015的solution文件。 +进入Paddle/paddle/fluid/inference/api/demo_ci目录,新建build目录并进入,然后使用cmake生成vs2015的solution文件。 指令为: -```cmake -cmake .. -G \"Visual Studio 14 2015 Win64\" -DWITH\_GPU=ON --DWITH\_MKL=OFF -DWITH\_STATIC\_LIB=ON -DCMAKE\_BUILD\_TYPE=Release --DDEMO\_NAME=simple\_on\_word2vec --DPADDLE\_LIB=D:\\to\_the\_paddle\_fluid.lib --DCUDA\_LIB=D:\\CUDA\\v8.0\\lib\\x64 -``` + +`cmake .. -G "Visual Studio 14 2015 Win64" -DWITH_GPU=OFF -DWITH_MKL=OFF -DWITH_STATIC_LIB=ON -DCMAKE_BUILD_TYPE=Release -DDEMO_NAME=simple_on_word2vec -DPADDLE_LIB=path_to_the_patddle\paddle_fluid.lib` 注: --DDEMO\_NAME 是要编译的文件 +-DDEMO_NAME 是要编译的文件 --DPADDLE\_LIB 是fluid\_install\_dir路径,例如 --DPADDLE\_LIB=D:\\fluid\_install\_dir +-DPADDLE_LIB 是fluid_install_dir路径,例如 +-DPADDLE_LIB=D:\fluid_install_dir --DCUDA\_LIB 是CUDA安装目录对应的文件夹 -Cmake可以在官网进行下载,并添加到环境变量中。[[https://cmake.org/download/]{.underline}](https://cmake.org/download/) +Cmake可以在[官网进行下载](https://cmake.org/download/),并添加到环境变量中。 -执行完毕后,build目录如图所示,打开 箭头指向的solution文件: +执行完毕后,build 目录如图所示,打开箭头指向的 solution 文件:

-修改编译属性为/MT: +修改编译属性为 `/MT` :

@@ -90,7 +61,7 @@ Cmake可以在官网进行下载,并添加到环境变量中。[[https://cmake

-编译生成选项改成Release。 +编译生成选项改成 `Release` 。

@@ -110,17 +81,13 @@ Cmake可以在官网进行下载,并添加到环境变量中。[[https://cmake 1. 开启GLOG - set GLOG\_v=3 + `set GLOG_v=100` 2. 进行预测 - simple\_on\_word2vec.exe \--dirname=.\\word2vec.inference.model + `simple_on_word2vec.exe --dirname=.\word2vec.inference.model`

-**FAQ:** - -路径中尽量不要包含空格,例如发现CUDA\_LIB路径是Program -Files(x86)可能会出错。可以将CUDA拷贝到一个新位置(这里直接拷贝就行) -- GitLab