425 Star 4.3K Fork 424

GVPPaddlePaddle / Paddle

 / 详情

Win10编译paddle develop+tensoRT6编译错误,及paddleTRT使用内存泄露

已完成
创建于  
2022-01-10 12:30

源自github用户prettyocean85:

  • 版本、环境信息:
       paddle develop+cuda10+tensoRT6.0.1.5
       系统环境:Win0、Python3.7
  • 安装方式信息:
    本地编译:编译命令make .. -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE=Release -DWITH_GPU=ON -DWITH_TESTING=OFF -DWITH_PYTHON=ON -DPYTHON_EXECUTABLE=D:\pythonAPI\Python37\python.exe -DCUDA_ARCH_NAME=Auto -DTENSORRT_ROOT="D:\4 Tools\TensorRT-6.0.1.5"         
  • 问题描述:2个问题
    问题1.Win10编译paddle develop源码+tensoRT6编译报错
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2019: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf const &)" (??0PaddleBuf@paddle@@QEAA@AEBV01@@Z) referenced in function "public: __cdecl paddle::PaddleTensor::PaddleTensor(struct paddle::PaddleTensor const &)" (??0PaddleTensor@paddle@@QEAA@AEBU01@@Z)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf const &)" (??0PaddleBuf@paddle@@QEAA@AEBV01@@Z)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf const &)" (??0PaddleBuf@paddle@@QEAA@AEBV01@@Z)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2019: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf const &)" (??4PaddleBuf@paddle@@QEAAAEAV01@AEBV01@@Z) referenced in function "public: struct paddle::PaddleTensor & __cdecl paddle::PaddleTensor::operator=(struct paddle::PaddleTensor const &)" (??4PaddleTensor@paddle@@QEAAAEAU01@AEBU01@@Z)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf const &)" (??4PaddleBuf@paddle@@QEAAAEAV01@AEBV01@@Z)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf const &)" (??4PaddleBuf@paddle@@QEAAAEAV01@AEBV01@@Z)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2019: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf &&)" (??4PaddleBuf@paddle@@QEAAAEAV01@$$QEAV01@@Z) referenced in function "public: struct paddle::PaddleTensor & __cdecl paddle::PaddleTensor::operator=(struct paddle::PaddleTensor &&)" (??4PaddleTensor@paddle@@QEAAAEAU01@$$QEAU01@@Z)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf &&)" (??4PaddleBuf@paddle@@QEAAAEAV01@$$QEAV01@@Z)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: class paddle::PaddleBuf & __cdecl paddle::PaddleBuf::operator=(class paddle::PaddleBuf &&)" (??4PaddleBuf@paddle@@QEAAAEAV01@$$QEAV01@@Z)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2019: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf &&)" (??0PaddleBuf@paddle@@QEAA@$$QEAV01@@Z) referenced in function "public: __cdecl paddle::PaddleTensor::PaddleTensor(struct paddle::PaddleTensor &&)" (??0PaddleTensor@paddle@@QEAA@$$QEAU01@@Z)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf &&)" (??0PaddleBuf@paddle@@QEAA@$$QEAV01@@Z)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: __cdecl paddle::PaddleBuf::PaddleBuf(class paddle::PaddleBuf &&)" (??0PaddleBuf@paddle@@QEAA@$$QEAV01@@Z)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2019: unresolved external symbol "private: void __cdecl paddle::PaddleBuf::Free(void)" (?Free@PaddleBuf@paddle@@AEAAXXZ) referenced in function "public: __cdecl paddle::PaddleBuf::~PaddleBuf(void)" (??1PaddleBuf@paddle@@QEAA@XZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "private: void __cdecl paddle::PaddleBuf::Free(void)" (?Free@PaddleBuf@paddle@@AEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "private: void __cdecl paddle::PaddleBuf::Free(void)" (?Free@PaddleBuf@paddle@@AEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::CpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@CpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableCUDNN(void)" (?EnableCUDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMKLDNN(void)" (?EnableMKLDNN@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnQuantizer(void)" (?EnableMkldnnQuantizer@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine_op.lib(tensorrt_engine_op.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(trt_int8_calibrator.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@GpuPassStrategy@paddle@@UEAAXXZ)
    29>libtensorrt_engine.lib(engine.obj) : error LNK2001: unresolved external symbol "public: virtual void __cdecl paddle::GpuPassStrategy::EnableMkldnnBfloat16(void)" (?EnableMkldnnBfloat16@GpuPassStrategy@paddle@@UEAAXXZ)
    29>D:\Paddle\build\paddle\fluid\pybind\Release\op_function_generator.exe : fatal error LNK1120: 13 unresolved externals

问题2.虽然编译报错但是能够成功编译出库,pip安装whl后使用python预测OCR1.1模型可启动tensoRT。但多张图预测GPU持续增长最后退出,报错:
File "D:\pythonAPI\Python37\call_paddle_STR_threadtrt.py", line 860, in call
self.predictor.zero_copy_run()
RuntimeError: Unknown exception

TypeError: cannot unpack non-iterable NoneType object
W1120 15:30:58.625453 52856 analysis_predictor.cc:1042] Deprecated. Please use CreatePredictor instead.
E1120 15:31:22.240916 83484 helper.h:78] c:\p4sw\sw\gpgpu\MachineLearning\DIT\release\5.1\engine\runtime.cpp (25) - Cuda Error in nvinfer1::`anonymous-namespace'::DefaultAllocator::allocate: 2 (out of memory)

评论 (1)

PaddlePaddle-Gardener 创建了任务
PaddlePaddle-Coordinator 任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(1)
Python
1
https://gitee.com/paddlepaddle/Paddle.git
git@gitee.com:paddlepaddle/Paddle.git
paddlepaddle
Paddle
Paddle

搜索帮助

53164aa7 5694891 3bd8fe86 5694891