Paddle-Inference win10平台C++源码编译(GPU版本亲测成功)

目标

x64 win10平台生成,目标运行平台x64 win10

克隆源码

git clone https://github.com/PaddlePaddle/Paddle.git

官方源码编译文档

https://paddle-inference.readthedocs.io/en/latest/user_guides/source_compile.html

1. 环境配置

1.1 硬件

  • i7-8700
  • NVIDIA TITAN RTX
  • 内存32G
  • 1T 西部数码固态

1.2 软件

  • Win10
  • CMake 3.17.0
  • CUDA 10.2
  • cudnn 7.6.5
  • paddlepaddle branch release/2.0-rc1(代码克隆下来先checkout)
  • 构建工具 Visual Studio 14 2015
  • IDE Visual Studio 2019

2. 说明

  1. 根据官方教程推荐使用Visual Studio 2015 update 3版本进行构建
  2. 使用VS 2019打开生成的.sln项目

3. 开始编译

  1. 因为TITAN RTX属于NVIDIA图灵架构,所以设定 -DCUDA_ARCH_NAME=Turing
  2. 生成平台为64位,目标平台为64位,所以设定 -A x64 -T host=x64
  3. 生成gpu带TensorRT版本设置-DWITH_GPU和-DWITH_TENSORRT为ON,将DTENSORRT_ROOT设置为对应版本TensorRT文件夹根目录
mkdir build
cd build
cmake .. -G "Visual Studio 14 2015" -A x64 -T host=x64 -DWITH_GPU=ON -DWITH_TESTING=OFF -DON_INFER=ON -DCMAKE_BUILD_TYPE=Release -DPY_VERSION=3  -DWITH_TENSORRT=ON -DTENSORRT_ROOT="E:\\TensorRT-7.0.0.11" -DWITH_NCCL=OFF -DCUDA_ARCH_NAME=Turing

4. 生成预测库

该步骤请开好代理,因为需要从github克隆项目下来

  1. 编译结束后在build文件夹根目录,用VS 2019打开paddle.sln
  2. 将Debug切换为Release
  3. 右键ALL_BUILD解决方案,点击生成
  4. 生成成功后如下图所示,检查\build\paddle_inference_install_dir目录下面是否有成功生成.dll文件
    Paddle-Inference win10平台C++源码编译(GPU版本亲测成功)_第1张图片

问题合集

  1. x64平台生成过程出现内存溢出(out of memory),检查-A x64 -T host=x64指令是否填写正确
    Paddle-Inference win10平台C++源码编译(GPU版本亲测成功)_第2张图片

你可能感兴趣的:(paddlepaddle,CUDA,paddlepaddle,python,c++)