PaddlePaddle / PaddleOCR

Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, support 80+ languages recognition, provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices)
Apache License 2.0
40.14k stars 7.43k forks source link

在打开TensoeRT后 运行到Run Paddle-TRT Dynamic Shape mode. 时会卡很久 #12590

Closed hangLt333 closed 3 weeks ago

hangLt333 commented 4 weeks ago

问题描述 / Problem Description

使用GPU预测时没有问题 但是在打开TensorRT后运行到I0603 6020 engine.cc:301 Run Paddle-TRT Dynamic Shape mode. 会卡很久。 但是在第一次运行时不存在 trt_det_shap.txt,trt_cls_shap.txt,trt_rec_shao.txt这三个shap文件时就是正常的加载时间,

运行环境 / Runtime Environment

附件 / Appendix

335500144-375e5878-7c82-4d09-a857-61084e941d6e

GreatV commented 4 weeks ago

确保配置的动态形状范围合理。配置过大的动态形状范围可能导致引擎构建和优化过程变慢。

hangLt333 commented 4 weeks ago

第一次运行使用的是

确保配置的动态形状范围合理。配置过大的动态形状范围可能导致引擎构建和优化过程变慢。

我现在使用的是推理自动生成动态 shape 的方式进行操作,先调用 CollectShapeRangeInfo 接口生成动态 shape 文件,在推理时将 CollectShapeRangeInfo 接口删掉,使用 EnableTunedTensorRtDynamicShape 接口调用动态 shape 输入 if (!Utility::PathExists("./trt_det_shape.txt")) {
config.CollectShapeRangeInfo("./trt_det_shape.txt"); } else { config.EnableTunedTensorRtDynamicShape("./trt_det_shape.txt", true); } 那可能就是他自动生成的shape文件的动态形状范围太大, 那我手动设置 TensorRT 的动态 Shape试一下