Skip to content

Latest commit

 

History

History
321 lines (228 loc) · 10.6 KB

Install_Linux_Env_CN.md

File metadata and controls

321 lines (228 loc) · 10.6 KB

原生系统标准环境安装

本文介绍基于原生系统标准环境进行配置安装。

CentOS 7 环境配置(第一步)

一.环境准备

  • Python 版本 3.6/3.7/3.8/3.9 (64 bit)

二.选择 CPU/GPU

  • 如果您的计算机有 NVIDIA® GPU,请确保满足以下条件

    • CUDA 工具包:10.1/10.2 配合 cuDNN 7 (cuDNN 版本>=7.6.5) 或者 11.2 配合 cuDNN v8.1.1

    • 兼容版本的 TensorRT

    • GPU运算能力超过3.5的硬件设备

      您可参考NVIDIA官方文档了解CUDA和CUDNN的安装流程和配置方法,请见CUDAcuDNNTensorRT, GPU算力

三.安装必要工具

需要安装的依赖库及工具详见下表:

组件 版本要求
bzip2-devel 1.0.6 and later
make later
gcc 8.2.0
gcc-c++ 8.2.0
cmake 3.15.0 and later
Go 1.17.2 and later
openssl-devel 1.0.2k
patchelf 0.9
  1. 更新系统源

    更新yum的源:

    yum update
    

    并添加必要的yum源:

    yum install -y epel-release
    
  2. 安装工具

    bzip2以及make

    yum install -y bzip2
    
    yum install -y make
    

    cmake 需要3.15以上,建议使用3.16.0:

    wget -q https://cmake.org/files/v3.16/cmake-3.16.0-Linux-x86_64.tar.gz
    
    tar -zxvf cmake-3.16.0-Linux-x86_64.tar.gz
    
    rm cmake-3.16.0-Linux-x86_64.tar.gz
    
    PATH=/home/cmake-3.16.0-Linux-x86_64/bin:$PATH
    

    gcc 需要5.4以上,建议使用8.2.0:

    wget -q https://paddle-docker-tar.bj.bcebos.com/home/users/tianshuo/bce-python-sdk-0.8.27/gcc-8.2.0.tar.xz && \
    tar -xvf gcc-8.2.0.tar.xz && \
    cd gcc-8.2.0 && \
    sed -i 's#ftp://gcc.gnu.org/pub/gcc/infrastructure/#https://paddle-ci.gz.bcebos.com/#g' ./contrib/download_prerequisites && \
    unset LIBRARY_PATH CPATH C_INCLUDE_PATH PKG_CONFIG_PATH CPLUS_INCLUDE_PATH INCLUDE && \
    ./contrib/download_prerequisites && \
    cd .. && mkdir temp_gcc82 && cd temp_gcc82 && \
    ../gcc-8.2.0/configure --prefix=/usr/local/gcc-8.2 --enable-threads=posix --disable-checking --disable-multilib && \
    make -j8 && make install
    
  3. 安装GOLANG

    建议使用 go1.17.2:

    wget -qO- https://go.dev/dl/go1.17.2.linux-amd64.tar.gz | \
    tar -xz -C /usr/local && \
    mkdir /root/go && \
    mkdir /root/go/bin && \
    mkdir /root/go/src && \
    echo "GOROOT=/usr/local/go" >> /root/.bashrc && \
    echo "GOPATH=/root/go" >> /root/.bashrc && \
    echo "PATH=/usr/local/go/bin:/root/go/bin:$PATH" >> /root/.bashrc
    source /root/.bashrc
    
  4. 安装依赖库

    安装相关依赖库 patchelf:

    yum install patchelf
    

    配置 ssl 依赖库

    wget https://paddle-serving.bj.bcebos.com/others/centos_ssl.tar && \
    tar xf centos_ssl.tar && rm -rf centos_ssl.tar && \
    mv libcrypto.so.1.0.2k /usr/lib/libcrypto.so.1.0.2k && mv libssl.so.1.0.2k /usr/lib/libssl.so.1.0.2k && \
    ln -sf /usr/lib/libcrypto.so.1.0.2k /usr/lib/libcrypto.so.10 && \
    ln -sf /usr/lib/libssl.so.1.0.2k /usr/lib/libssl.so.10 && \
    ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so && \
    ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so
    

Ubuntu 16.04/18.04 环境配置(第一步)

一.环境准备

  • Python 版本 3.6/3.7/3.8/3.9 (64 bit)

二.选择 CPU/GPU

  • 如果您的计算机有 NVIDIA® GPU,请确保满足以下条件

    • CUDA 工具包 10.1/10.2 配合 cuDNN 7 (cuDNN 版本>=7.6.5)

    • CUDA 工具包 11.2 配合 cuDNN v8.1.1

    • 配套版本的 TensorRT

    • GPU运算能力超过3.5的硬件设备

      您可参考NVIDIA官方文档了解CUDA和CUDNN的安装流程和配置方法,请见CUDAcuDNNTensorRT

三.安装必要工具

  1. 更新系统源

    更新apt的源:

    apt update
    
  2. 安装工具

    bzip2以及make

    apt install -y bzip2
    
    apt install -y make
    

    cmake 需要3.15以上,建议使用3.16.0:

    wget -q https://cmake.org/files/v3.16/cmake-3.16.0-Linux-x86_64.tar.gz
    
    tar -zxvf cmake-3.16.0-Linux-x86_64.tar.gz
    
    rm cmake-3.16.0-Linux-x86_64.tar.gz
    
    PATH=/home/cmake-3.16.0-Linux-x86_64/bin:$PATH
    

    gcc 需要5.4以上,建议使用8.2.0:

    wget -q https://paddle-docker-tar.bj.bcebos.com/home/users/tianshuo/bce-python-sdk-0.8.27/gcc-8.2.0.tar.xz && \
    tar -xvf gcc-8.2.0.tar.xz && \
    cd gcc-8.2.0 && \
    sed -i 's#ftp://gcc.gnu.org/pub/gcc/infrastructure/#https://paddle-ci.gz.bcebos.com/#g' ./contrib/download_prerequisites && \
    unset LIBRARY_PATH CPATH C_INCLUDE_PATH PKG_CONFIG_PATH CPLUS_INCLUDE_PATH INCLUDE && \
    ./contrib/download_prerequisites && \
    cd .. && mkdir temp_gcc82 && cd temp_gcc82 && \
    ../gcc-8.2.0/configure --prefix=/usr/local/gcc-8.2 --enable-threads=posix --disable-checking --disable-multilib && \
    make -j8 && make install
    
  3. 安装GOLANG

    建议使用 go1.17.2:

    wget -qO- https://go.dev/dl/go1.17.2.linux-amd64.tar.gz | \
    tar -xz -C /usr/local && \
    mkdir /root/go && \
    mkdir /root/go/bin && \
    mkdir /root/go/src && \
    echo "GOROOT=/usr/local/go" >> /root/.bashrc && \
    echo "GOPATH=/root/go" >> /root/.bashrc && \
    echo "PATH=/usr/local/go/bin:/root/go/bin:$PATH" >> /root/.bashrc
    source /root/.bashrc
    
  4. 安装依赖库

    安装相关依赖库 patchelf:

    apt-get install patchelf
    

    配置 ssl 依赖库

    wget https://paddle-serving.bj.bcebos.com/others/centos_ssl.tar && \
    tar xf centos_ssl.tar && rm -rf centos_ssl.tar && \
    mv libcrypto.so.1.0.2k /usr/lib/libcrypto.so.1.0.2k && mv libssl.so.1.0.2k /usr/lib/libssl.so.1.0.2k && \
    ln -sf /usr/lib/libcrypto.so.1.0.2k /usr/lib/libcrypto.so.10 && \
    ln -sf /usr/lib/libssl.so.1.0.2k /usr/lib/libssl.so.10 && \
    ln -sf /usr/lib/libcrypto.so.10 /usr/lib/libcrypto.so && \
    ln -sf /usr/lib/libssl.so.10 /usr/lib/libssl.so
    

Windows 环境配置(第一步)

由于受限第三方库的支持,Windows平台目前只支持用web service的方式搭建local predictor预测服务。

一.环境准备

  • Python 版本 3.6/3.7/3.8/3.9 (64 bit)

二.选择 CPU/GPU

  • 如果您的计算机有 NVIDIA® GPU,请确保满足以下条件

    • CUDA 工具包 10.1/10.2 配合 cuDNN 7 (cuDNN 版本>=7.6.5)

    • CUDA 工具包 11.2 配合 cuDNN v8.1.1

    • 配套版本的 TensorRT

    • GPU运算能力超过3.5的硬件设备

      您可参考NVIDIA官方文档了解CUDA和CUDNN的安装流程和配置方法,请见CUDAcuDNNTensorRT

三.安装必要工具

  1. 更新 wget 工具

    在链接下载wget,解压后复制到C:\Windows\System32下,如有安全提示需要通过。

  2. 安装git工具

    详情参见Git官网

  3. 安装必要的C++库(可选)

    部分用户可能会在import paddle阶段遇见dll无法链接的问题,建议安装Visual Studio社区版本 ,并且安装C++的相关组件。

使用 pip 安装(第二步)

一. 安装服务 whl 包

服务 whl 包包括: client、app、server,其中 Server 分为 CPU 和 GPU,GPU 包根据您的环境选择一种安装

pip3 install paddle-serving-client==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install paddle-serving-app==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple

# CPU Server
pip3 install paddle-serving-server==0.8.3 -i https://pypi.tuna.tsinghua.edu.cn/simple

# GPU Server,需要确认环境再选择执行哪一条,推荐使用CUDA 10.2的包
# CUDA10.2 + Cudnn7 + TensorRT6(推荐)
pip3 install paddle-serving-server-gpu==0.8.3.post102 -i https://pypi.tuna.tsinghua.edu.cn/simple 
# CUDA10.1 + TensorRT6
pip3 install paddle-serving-server-gpu==0.8.3.post101 -i https://pypi.tuna.tsinghua.edu.cn/simple
# CUDA11.2 + TensorRT8
pip3 install paddle-serving-server-gpu==0.8.3.post112 -i https://pypi.tuna.tsinghua.edu.cn/simple

默认开启国内清华镜像源来加速下载,如果您使用 HTTP 代理可以关闭(-i https://pypi.tuna.tsinghua.edu.cn/simple)

二. 安装 Paddle 相关 Python 库 当您使用paddle_serving_client.convert命令或者Python Pipeline 框架时才需要安装。

# CPU 环境请执行
pip3 install paddlepaddle==2.2.2

# GPU CUDA 10.2环境请执行
pip3 install paddlepaddle-gpu==2.2.2

注意: 如果您的 Cuda 版本不是10.2,或者您需要在 GPU 环境上使用 TensorRT,请勿直接执行上述命令,需要参考Paddle-Inference官方文档-下载安装Linux预测库选择相应的 GPU 环境的 url 链接并进行安装。

三. 安装完成后的环境检查 当以上步骤均完成后可使用命令行运行环境检查功能,自动运行 Paddle Serving 相关示例,进行环境相关配置校验。

python3 -m paddle_serving_server.serve check
# 以下输出表明环境检查正常
(Cmd) check_all
PaddlePaddle inference environment running success
C++ cpu environment running success
C++ gpu environment running success
Pipeline cpu environment running success
Pipeline gpu environment running success

详情请参考环境检查文档