paddle推理部署(gpu)

我没按照官方文档去做,吐槽一下,官方文档有点混乱。。

一、概述

总结起来,就是用c++示例代码,用一个模型做推理。

二、示例代码下载

https://www.paddlepaddle.org.cn/paddle/paddleinference

https://github.com/PaddlePaddle/Paddle-Inference-Demo

我下载到了磁盘,并解压,如下图:

三、推理库下载

四、示例模型

点击上图中的ResNet50,就可以下载这个模型。

五、整理文件夹

  1. 预测库paddle_inference目录(如解压后的目录名称不同,也需重命名为paddle_inference)拷贝至Paddle-Inference-Demo/c++/lib目录下

  1. 模型目录resnet50目录,拷贝至Paddle-Inference-Demo/c++/cpu/resnet50目录下

  1. Paddle-Inference-Demo-master\c++\lib下的CMakeLists.txt,拷贝到Paddle-Inference-Demo-master\c++\cpu\resnet50下面

  1. 有可能,我是说有可能,include和lib找不到,需要paddle_inference_install_dir文件夹下所有的东西,移动到跟他平级。

因为,你自己看一下vs的项目属性,下面cmake之后,给你生成的项目附加库目录什么的,都不对。

注意,最近“paddle_inference_install_dir”文件夹没有了

六、CMAKE

  1. 那个build文件夹,是我新建的

  1. DEMO_NAME和 PADDLE_LIB是我增加的。

  1. cmake后,会得到

  1. 进入vs,在release下,生成可执行文件:

七、测试一下

你缺很多dll,甚至可能导致程序崩溃,却不提示你缺dll

这下面,dll很多,尽量多弄过来!

像我这样,如下图

我干脆把神经网络模型,拷贝到Release目录下了

我执行

resnet50_test --model_file resnet50\inference.pdmodel --params_file resnet50\inference.pdiparams
    
    

八、可能缺tensorrt

如果你搞的是GPU的部署,则需要tensorrt相关库。

否则会在执行的时候,命令行里有tensorrt的警告。

就去这个网站下载吧。

https://developer.nvidia.com/nvidia-tensorrt-download

这里我下载的是 TensorRT-8.2.1.8.Windows10.x86_64.cuda-11.4.cudnn8.2.zip,解压后,bin 目录加入到系统环境变量 PATH 中

同时将 lib 文件夹下的*.dll和*.lib文件分别拷贝到 cuda 安装目录下的 bin 文件夹与lib/x64下,我这里是

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\lib\x64

操作如下图:

我没按照官方文档去做,吐槽一下,官方文档有点混乱。。

一、概述

总结起来,就是用c++示例代码,用一个模型做推理。

二、示例代码下载

https://www.paddlepaddle.org.cn/paddle/paddleinference

https://github.com/PaddlePaddle/Paddle-Inference-Demo

我下载到了磁盘,并解压,如下图:

三、推理库下载

四、示例模型

点击上图中的ResNet50,就可以下载这个模型。

五、整理文件夹

  1. 预测库paddle_inference目录(如解压后的目录名称不同,也需重命名为paddle_inference)拷贝至Paddle-Inference-Demo/c++/lib目录下

  1. 模型目录resnet50目录,拷贝至Paddle-Inference-Demo/c++/cpu/resnet50目录下

  1. Paddle-Inference-Demo-master\c++\lib下的CMakeLists.txt,拷贝到Paddle-Inference-Demo-master\c++\pu\resnet50下面

  1. 有可能,我是说有可能,include和lib找不到,需要paddle_inference_install_dir文件夹下所有的东西,移动到跟他平级。

因为,你自己看一下vs的项目属性,下面cmake之后,给你生成的项目附加库目录什么的,都不对。

注意,最近“paddle_inference_install_dir”文件夹没有了

六、CMAKE

  1. 那个build文件夹,是我新建的

  1. DEMO_NAME和 PADDLE_LIB是我增加的。

  1. 勾选USE_TENSORRT并填写TENSORRT路径,此处我是把TENSORRT放在了D:\tmp\TensorRT-8.5.3.1.Windows10.x86_64.cuda-11.8.cudnn8.6\TensorRT-8.5.3.1路径下,不填写会报错无法cmake

  1. cmake后,会得到

  1. 进入vs,在release下,生成可执行文件:

七、测试一下

你缺很多dll,甚至可能导致程序崩溃,却不提示你缺dll

这下面,dll很多,尽量多弄过来!

像我这样,如下图

我干脆把神经网络模型,拷贝到Release目录下了

我执行

resnet50_test --model_file resnet50\inference.pdmodel --params_file resnet50\inference.pdiparams
    
    

八、可能缺tensorrt

当前搞的是GPU的部署,则需要tensorrt相关库。

否则会在执行的时候,命令行里有tensorrt的警告。

就去这个网站下载吧。

https://developer.nvidia.com/nvidia-tensorrt-download

这里我下载的是 TensorRT-8.2.1.8.Windows10.x86_64.cuda-11.4.cudnn8.2.zip,解压后,bin 目录加入到系统环境变量 PATH 中

同时将 lib 文件夹下的*.dll和*.lib文件分别拷贝到 cuda 安装目录下的 bin 文件夹与lib/x64下,我这里是

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\lib\x64

操作如下图:

此处会有一些坑:

(1)cudnn缺失,cudnn和cuda版本对应及下载地址https://developer.nvidia.com/rdp/cudnn-archive#a-collapse742-10,cudnn下载好之后解压出来是三个文件夹,把三个文件夹中的文件对应拷贝进cuda安装目录中对应的路径中即可

(1)提示tensorrt路径下缺失某些lib文件和dll,cudnn和cuda版本对应及下载地址https://developer.nvidia.com/rdp/cudnn-archive#a-collapse742-10,cudnn下载好之后解压出来是三个文件夹,把三个文件夹中的文件对应拷贝进cuda安装目录中对应的路径中即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值