1.准备工作
下载paddle源码
git clone https://github.com/paddlepaddle/paddle
速度慢可以去gitee
建议使用git checkout切换到Paddle稳定的版本,如:
git checkout v1.8.4
安装nccl
git clone https://github.com/NVIDIA/nccl.git
make -j4
make install
sudo ldconfig
2.cmake设置
cmake之前,如果想使用conda里面的python,可以先进入conda,然后加入一下代码,终端中使用 conda info
快速查看当前环境信息
-DPYTHON_EXECUTABLE=/home/bcw/anaconda3/envs/python37/bin/python3
-DPYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \
-DPYTHON_LIBRARY=$(python -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))") \
sudo cmake .. -DPY_VERSION=3.7 \
-DWITH_TESTING=OFF \
-DCMAKE_BUILD_TYPE=Release \
-DON_INFER=ON \
-DCUDA_ARCH_NAME=Auto \
-DTENSORRT_ROOT=/usr/local/TensorRT6-cuda10.1-cudnn7 \
-DPYTHON_INCLUDE_DIR=$(python -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())") \
-DPYTHON_LIBRARY=$(python -c "import distutils.sysconfig as sysconfig; print(sysconfig.get_config_var('LIBDIR'))") \
2.git设置
git config --global http.postBuffer 524288000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
使用 git config -l
查看当前git命令
3.安装python包,make infer库
预测库编译,编译好后生成 fluid_inference_install_dir 文件夹
make inference_lib_dist -j4
安装python包,位于
cd python/dist
pip3 install -U paddlepaddle_gpu-1.8.4-cp37-cp37m-linux_x86_64.whl
4.一些可能的错误
(1)gcc,g++版本错误,更新gcc版本到gcc-8,更新方法见博客
(2)编译飞桨过程中可能会打开很多文件,Ubuntu 18.04 默认设置最多同时打开的文件数是1024(参见 ulimit -a),需要更改这个设定值。
在 /etc/security/limits.conf 文件中添加两行。
* hard noopen 102400
* soft noopen 102400
重启计算机,重启后执行以下指令,请将${user}切换成当前用户名。
su ${user}
ulimit -n 102400