Paddle Inference C++ 依赖库安装(Windows)

Paddle Inference C++ 依赖库安装

  • 1. 环境准备
  • 2. 下载安装库
  • 3. 设置环境变量
  • 4. VS C++ 项目配置

  Paddle Inference 是飞桨的原生推理库, 提供服务器端的高性能推理能力。由于 Paddle Inference 能力直接基于飞桨的训练算子,因此它支持飞桨训练出的所有模型的推理。Paddle Inference 功能特性丰富,性能优异,针对不同平台不同的应用场景进行了深度的适配优化,做到高吞吐、低时延,保证了飞桨模型在服务器端即训即用,快速部署。

 此处针对使用GPU加速的方式安装,主要依靠NVIDIA 官方文档了解 CUDA、cuDNN 和 TensorRT

1. 环境准备

 此处针对使用GPU加速的方式安装,主要依靠NVIDIA 显卡CUDA、cuDNN 和 TensorRT,所以首先电脑环境应当安装上CUDA、cuDNN 和 TensorRT,具体版本对应如下表所示:

CUDA 版本 cuDNN 版本 TensorRT 版本
10.2 7.6.5 7.0.0.11
11.2 8.2.1 8.0.1.6
11.6 8.4.0 8.4.0.6
11.7 8.4.1 8.4.2.4

 具体版本可以有一些差别,本机电脑安装的CUDA版本为11.4,cuDNN 版本为8.2.4,TensorRT 版本为8.4.0.6,经过测试也是可以使用的。

2. 下载安装库

 此处我们需要安装C++依赖库,飞桨官网提供了编译好的安装包,此处我们直接下载安装包即可,如果没有对应的版本可以自己进行编译,不过可能会浪费更多时间,其容易出错,因此此处采用线程的预编译包:

下载安装 Linux 推理库-PaddlePaddle深度学习平台
Paddle Inference C++ 依赖库安装(Windows)_第1张图片

 由于当前电脑安装的CUDN为11.4,没有对应编译好的文件,所以选择

CUDA11.6/cuDNN8.4/TensorRT8.4版本下载,经过测试是可以使用的。

问价下载好后,将压缩包解压到指定路径下,将该路径作为后面的安装和使用路径。文件解压后架构如下所示:

paddle_inference/paddle_inference_install_dir/
├── CMakeCache.txt
├── paddle
│   ├── include                                    C++ 推理库头文件目录
│   │   ├── crypto
│   │   ├── internal
│   │   ├── paddle_analysis_config.h
│   │   ├── paddle_api.h
│   │   ├── paddle_infer_declare.h
│   │   ├── paddle_inference_api.h                 C++ 推理库头文件
│   │   ├── paddle_mkldnn_quantizer_config.h
│   │   └── paddle_pass_builder.h
│   └── lib
│       ├── libpaddle_inference.lib                      C++ 静态推理库文件
│       └── libpaddle_inference.dll                      C++ 动态态推理库文件
├── third_party
│   ├── install                                    第三方链接库和头文件
│   │   ├── cryptopp
│   │   ├── gflags
│   │   ├── glog
│   │   ├── mkldnn
│   │   ├── mklml
│   │   ├── protobuf
│   │   └── xxhash
│   └── threadpool
│       └── ThreadPool.h
└── version.txt

3. 设置环境变量

 此处需要将所有的动态推理库路径加入到环境变量中,由于文件路径较多,所以先创建一个变量paddle_inference,并依次加入以下路径:
Paddle Inference C++ 依赖库安装(Windows)_第2张图片

D:\Program Files\paddle_inference\paddle\lib
D:\Program Files\paddle_inference\third_party\install\cryptopp\lib
D:\Program Files\paddle_inference\third_party\install\gflags\lib
D:\Program Files\paddle_inference\third_party\install\glog\lib
D:\Program Files\paddle_inference\third_party\install\mkldnn\lib
D:\Program Files\paddle_inference\third_party\install\mklml\lib
D:\Program Files\paddle_inference\third_party\install\onnxruntime\lib
D:\Program Files\paddle_inference\third_party\install\paddle2onnx\lib
D:\Program Files\paddle_inference\third_party\install\protobuf\lib
D:\Program Files\paddle_inference\third_party\install\utf8proc\lib
D:\Program Files\paddle_inference\third_party\install\xxhash\lib;

 最后在系统环境变量Path变量中加入上面创建的变量:%paddle_inference%

4. VS C++ 项目配置

 由于下载的预编译包只支持Release模式,所以此处只能使用Release:

// 包含目录
D:\Program Files\paddle_inference\paddle\include
// 库目录
D:\Program Files\paddle_inference\paddle\lib
// 附加依赖项
paddle_inference.lib

你可能感兴趣的:(深度学习,学习教程,c++,paddle,深度学习)