diff --git a/doc/build/build_from_source.md b/doc/build/build_from_source.md index b8f26f431eb7a04147fe791a8c805427c827fe09..e44fa0d38e9982e5d0ed159743994ce6acc51246 100644 --- a/doc/build/build_from_source.md +++ b/doc/build/build_from_source.md @@ -6,10 +6,10 @@ Installing from Sources * [3. Build on Ubuntu](#ubuntu) ## Download and Setup -You can download PaddlePaddle from the [github source](https://github.com/gangliao/Paddle). +You can download PaddlePaddle from the [github source](https://github.com/PaddlePaddle/Paddle). ```bash -git clone https://github.com/baidu/Paddle paddle +git clone https://github.com/PaddlePaddle/Paddle paddle cd paddle ``` diff --git a/doc_cn/build_and_install/cmake/cblas_settings.csv b/doc_cn/build_and_install/cmake/cblas_settings.csv index d804c0a662cb652dbefb0d09fb18538308c20aec..a6356baf16a0d3d2499e39d2055d8ee878dcaef2 100644 --- a/doc_cn/build_and_install/cmake/cblas_settings.csv +++ b/doc_cn/build_and_install/cmake/cblas_settings.csv @@ -1,4 +1,5 @@ -MKL_ROOT,mkl的路径,在${MKL_ROOT}/include下需要包含mkl.h,在${MKL_ROOT}/lib目录下需要包含 mkl_core,mkl_sequential和mkl_intel_lp64三个库 -ATLAS_ROOT,ATLAS库的路径,在${ATLAS_ROOT}/include下需要包含cblas.h,而在${ATLAS_ROOT}/lib下需要包含cblas和atlas两个库 -OPENBLAS_ROOT,在${OPENBLAS_ROOT}/include下需要包含cblas.h,而在${OPENBLAS_ROOT}/lib下需要包含openblas库 -REFERENCE_CBLAS_ROOT,在${REFERENCE_CBLAS_ROOT}/include下需要包含cblas.h,在${REFERENCE_CBLAS_ROOT}/lib下需要包含cblas库 \ No newline at end of file +编译选项,描述,注意 +MKL_ROOT,MKL的路径,${MKL_ROOT}/include下需要包含mkl.h,${MKL_ROOT}/lib目录下需要包含mkl_core,mkl_sequential和mkl_intel_lp64三个库。 +ATLAS_ROOT,ATLAS的路径,${ATLAS_ROOT}/include下需要包含cblas.h,${ATLAS_ROOT}/lib下需要包含cblas和atlas两个库。 +OPENBLAS_ROOT,OpenBLAS的路径,${OPENBLAS_ROOT}/include下需要包含cblas.h,${OPENBLAS_ROOT}/lib下需要包含openblas库。 +REFERENCE_CBLAS_ROOT,REFERENCE BLAS的路径,${REFERENCE_CBLAS_ROOT}/include下需要包含cblas.h,${REFERENCE_CBLAS_ROOT}/lib下需要包含cblas库。 \ No newline at end of file diff --git a/doc_cn/build_and_install/cmake/compile_options.csv b/doc_cn/build_and_install/cmake/compile_options.csv index 0b8015aaee4d7b9068cb4a8de5d9967569e37f0c..12b45eebb2822d77447fa1bc754360605971dcab 100644 --- a/doc_cn/build_and_install/cmake/compile_options.csv +++ b/doc_cn/build_and_install/cmake/compile_options.csv @@ -1,15 +1,14 @@ -选项,说明,默认值 -WITH_GPU,是否编译GPU支持。,是否寻找到cuda工具链 -WITH_DOUBLE,是否使用双精度浮点数。,否 -WITH_DSO,是否使用运行时动态加载cuda动态库,而非静态加载cuda动态库。,是 -WITH_AVX,是否编译含有AVX指令集的PaddlePaddle二进制,是 -WITH_PYTHON,是否内嵌python解释器。可以方便嵌入式工作。,是 -WITH_STYLE_CHECK,是否编译时进行代码风格检查,是 -WITH_RDMA,是否开启RDMA支持,否 -WITH_GLOG,是否使用GLOG,如果不使用则会使用一个简化版的日志实现。可以方便嵌入式工作。,取决于是否寻找到GLOG -WITH_GFLAGS,是否使用GFLAGS,如果不使用则会使用一个简化版的命令行参数解析。可以方便嵌入式工作。,取决于是否寻找到GFLAGS -WITH_TIMER,是否开启计时功能开启计时功能会导致运行略慢,打印的日志变多。但是方便调试和benchmark,否 -WITH_TESTING,是否开启单元测试,取决于是否寻找到gtest -WITH_DOC,是否编译英文文档,否 -WITH_DOC_CN,是否编译中文文档,否 -WITH_SWIG_PY,是否编译python的swig接口,python的swig接口可以方便进行预测和定制化训练,取决于是否找到swig +选项,说明,默认值 +WITH_GPU,是否支持GPU。,取决于是否寻找到CUDA工具链 +WITH_DOUBLE,是否使用双精度浮点数。,否 +WITH_DSO,是否运行时动态加载CUDA动态库,而非静态加载CUDA动态库。,是 +WITH_AVX,是否编译含有AVX指令集的PaddlePaddle二进制文件,是 +WITH_PYTHON,是否内嵌PYTHON解释器。方便今后的嵌入式移植工作。,是 +WITH_STYLE_CHECK,是否编译时进行代码风格检查,是 +WITH_RDMA,是否开启RDMA,否 +WITH_GLOG,是否开启GLOG。如果不开启,则会使用一个简化版的日志,同时方便今后的嵌入式移植工作。,取决于是否寻找到GLOG +WITH_GFLAGS,是否使用GFLAGS。如果不开启,则会使用一个简化版的命令行参数解析器,同时方便今后的嵌入式移植工作。,取决于是否寻找到GFLAGS +WITH_TIMER,是否开启计时功能。如果开启会导致运行略慢,打印的日志变多,但是方便调试和测Benchmark,否 +WITH_TESTING,是否开启单元测试,取决于是否寻找到GTEST +WITH_DOC,是否编译中英文文档,否 +WITH_SWIG_PY,是否编译PYTHON的SWIG接口,该接口可用于预测和定制化训练,取决于是否寻找到SWIG \ No newline at end of file diff --git a/doc_cn/build_and_install/cmake/compile_options.rst b/doc_cn/build_and_install/cmake/compile_options.rst index bb5b18a073803662774cb6b7bcbdbafe3ad51112..f345ead2bf851bdad7be2fb8185d16fd2a318a66 100644 --- a/doc_cn/build_and_install/cmake/compile_options.rst +++ b/doc_cn/build_and_install/cmake/compile_options.rst @@ -1,62 +1,43 @@ -设置PaddlePaddle的编译选项 -========================== - -PaddlePaddle的编译选项可以在调用cmake的时候设置。cmake是一个跨平台的编译脚本,调用 -cmake可以将cmake项目文件,生成各个平台的makefile。详细的cmake使用方法可以参考 -`cmake的官方文档 `_ 。 - -PaddlePaddle的编译选项是可以控制PaddlePaddle生成CPU/GPU版本二进制,链接何种blas等等。所有的 -编译选项列表如下 - -PaddlePaddle的编译选项 ----------------------- - -bool型的编译选项 -++++++++++++++++ -设置下列编译选项时,可以在cmake的命令行设置。使用 -D命令即可。例如 -:code:`cmake -D WITH_GPU=OFF` - -.. csv-table:: PaddlePaddle的bool型编译选项 - :widths: 1, 7, 2 - :file: compile_options.csv - -blas相关的编译选项 -++++++++++++++++++ - -PaddlePaddle可以使用 `MKL `_ , -`Atlas `_ , -`OpenBlas `_ 和 -`refference Blas `_ ,任意一种cblas实现。 -通过编译时指定路径来实现引用各种blas。 - -cmake编译时会首先在系统路径(/usr/lib\:/usr/local/lib)中寻找这些blas的实现。同时 -也会读取相关路径变量来进行搜索。路径变量为\: - - -.. csv-table:: PaddlePaddle的cblas编译选项 - :widths: 1, 9 - :header: "编译选项", "描述" - :file: cblas_settings.csv - -这些变量均可以使用 -D命令指定。例如 :code:`cmake -D MKL_ROOT=/opt/mkl/`。这些变 -量也可以通过调用cmake命令前通过环境变量指定。例如 - -.. code-block:: bash - - export MKL_ROOT=/opt/mkl - cmake - -需要注意的是,这些变量只在第一次cmake的时候有效。如果在第一次cmake之后想要重新设 -置这些变量,推荐清理( :code:`rm -rf` )掉编译目录后,再指定。 - -cuda/cudnn相关的编译选项 -++++++++++++++++++++++++ - -PaddlePaddle可以使用 cudnn v2之后的任何一个cudnn版本来编译运行。但需要注意的是编译和 -运行使用的cudnn尽量是同一个版本。推荐使用最新版本的cudnn v5.1。 - -在cmake配置时可以使用 :code:`CUDNN_ROOT` 来配置CUDNN的安装路径。使用的命令也是 --D,例如 :code:`cmake -D CUDNN_ROOT=/opt/cudnnv5` 。 - -需要注意的是,这些变量只在第一次cmake的时候有效。如果在第一次cmake之后想要重新设 -置这些变量,推荐清理( :code:`rm -rf` )掉编译目录后,再指定。 +PaddlePaddle的编译选项 +====================== + +PaddlePaddle的编译选项,包括生成CPU/GPU二进制文件、链接何种BLAS库等。用户可在调用cmake的时候设置它们,详细的cmake使用方法可以参考 `官方文档 `_ 。 + +Bool型的编译选项 +---------------- +用户可在cmake的命令行中,通过使用 ``-D`` 命令设置该类编译选项,例如 + +.. code-block:: bash + + cmake .. -DWITH_GPU=OFF + +.. csv-table:: Bool型的编译选项 + :widths: 1, 7, 2 + :file: compile_options.csv + +BLAS/CUDA/Cudnn的编译选项 +-------------------------- +BLAS ++++++ + +PaddlePaddle支持以下任意一种BLAS库:`MKL `_ ,`ATLAS `_ ,`OpenBlAS `_ 和 `REFERENCE BLAS `_ 。 + +.. csv-table:: BLAS路径相关的编译选项 + :widths: 1, 2, 7 + :file: cblas_settings.csv + +CUDA/Cudnn ++++++++++++ + +PaddlePaddle可以使用cudnn v2之后的任何一个版本来编译运行,但尽量请保持编译和运行使用的cudnn是同一个版本。 我们推荐使用最新版本的cudnn v5.1。 + +编译选项的设置 +++++++++++++++ + +PaddePaddle通过编译时指定路径来实现引用各种BLAS/CUDA/Cudnn库。cmake编译时,首先在系统路径(/usr/lib\:/usr/local/lib)中搜索这几个库,同时也会读取相关路径变量来进行搜索。 通过使用 ``-D`` 命令可以设置,例如 + +.. code-block:: bash + + cmake .. -DMKL_ROOT=/opt/mkl/ -DCUDNN_ROOT=/opt/cudnnv5 + +注意:这几个编译选项的设置,只在第一次cmake的时候有效。如果之后想要重新设置,推荐清理整个编译目录(``rm -rf``)后,再指定。 \ No newline at end of file diff --git a/doc_cn/howto/how_to_write_docs/index.rst b/doc_cn/howto/how_to_write_docs/index.rst index 869ef747f9f88c7dbb5efdf6e03111a3f76c4014..a1f983b3405fa40f436885e40fca2ebbb4695491 100644 --- a/doc_cn/howto/how_to_write_docs/index.rst +++ b/doc_cn/howto/how_to_write_docs/index.rst @@ -2,32 +2,19 @@ 如何贡献/修改PaddlePaddle的文档 ############################### -PaddlePaddle的文档使用 `cmake`_ 驱动 `sphinx`_ 生成。公有两个文档,:code:`doc` 和 :code:`doc_cn` 。这两者会在 `cmake`_ 中进行编译,生成后的文档会存储在服务器的 :code:`doc` 和 :code:`doc_cn` 两个目录下。 +PaddlePaddle的文档包括英文文档 ``doc`` 和中文文档 ``doc_cn`` 两个部分。文档都是通过 `cmake`_ 驱动 `sphinx`_ 编译生成,生成后的文档分别存储在编译目录的 ``doc`` 和 ``doc_cn`` 两个子目录下。 -下面分几个部分介绍一下PaddlePaddle文档的贡献方法。 - -如何书写PaddlePaddle的文档 -========================== - -TBD 如何构建PaddlePaddle的文档 ========================== -构建PaddlePaddle文档,需要使用构建Paddle的全部环境。准备这个环境相对来说比较复杂,所以本文档提供两种方式构建PaddlePaddle的文档,即 - -* 使用Docker构建PaddlePaddle的文档 -* 直接构建PaddlePaddle的文档。 - -并且,我们推荐使用Docker来构建PaddlePaddle的文档。 +PaddlePaddle的文档构建有直接构建和基于Docker构建两种方式。构建PaddlePaddle文档需要准备的环境相对较复杂,所以我们推荐使用基于Docker来构建PaddlePaddle的文档。 使用Docker构建PaddlePaddle的文档 -------------------------------- -使用Docker构建PaddlePaddle的文档,首先要求在系统里安装好Docker工具包。安装Docker请参考 `Docker的官网 `_ 。 - -安装好Docker之后可以使用源码目录下的脚本构建文档,即 +使用Docker构建PaddlePaddle的文档,需要在系统里先安装好Docker工具包。Docker安装请参考 `Docker的官网 `_ 。安装好Docker之后可以使用源码目录下的脚本构建文档,即 .. code-block:: bash @@ -35,10 +22,10 @@ TBD cd paddle/scripts/tools/build_docs bash build_docs.sh -执行完这个脚本后,该目录下会生成两个目录,分别是\: +编译完成后,该目录下会生成如下两个子目录\: -* doc 目录,英文文档地址 -* doc_cn 目录,中文文档地址 +* doc 英文文档目录 +* doc_cn 中文文档目录 打开浏览器访问对应目录下的index.html即可访问本地文档。 @@ -52,6 +39,10 @@ TBD TBD +如何书写PaddlePaddle的文档 +========================== + +TBD 如何更新www.paddlepaddle.org文档 ================================