【解决--车道线检测部署网络--核心转储--tensorrt和cuda版本问题】

项目场景:

在进行车道线检测部署网络的过程中,遇到了核心转储的问题!!!!令人头大!!!

(lane_det) l@l:/line_detection/UFLD-v2$ python deploy/trt_infer.py --config_path configs/tusimple_res18.py --engine_path/line_detection/UFLD-v2/log/20231207_093105_lr_5e-02_b_64/model_best.engine --video_path example.mp4 
段错误 (核心已转储)

问题描述

提示:这里描述项目中遇到的问题:

例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据
APP 中接收数据代码:

(lane_det) l@l:/line_detection/UFLD-v2$ gdb python
GNU gdb (Ubuntu 8.1.1-0ubuntu1) 8.1.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
---Type <return> to continue, or q <return> to quit---run deploy/trt_infer.py --config_path configs/tusimple_res18.py --engine_path /line_detection/UFLD-v2/log/20231207_093105_lr_5e-02_b_64/model_best.engine --video_path example.mp4
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from python...done.
(gdb) run deploy/trt_infer.py --config_path configs/tusimple_res18.py --engine_path /line_detection/UFLD-v2/log/20231207_093105_lr_5e-02_b_64/model_best.engine --video_path example.mp4
Starting program: /home/l/anaconda3/envs/lane_det/bin/python deploy/trt_infer.py --config_path configs/tusimple_res18.py --engine_path /line_detection/UFLD-v2/log/20231207_093105_lr_5e-02_b_64/model_best.engine --video_path example.mp4
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
BFD: warning: /home/l/anaconda3/envs/lane_det/bin/../lib/libgcc_s.so.1: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0010001
BFD: warning: /home/l/anaconda3/envs/lane_det/bin/../lib/libgcc_s.so.1: unsupported GNU_PROPERTY_TYPE (5) type: 0xc0010002
[New Thread 0x7ffff3ea8700 (LWP 21299)]
。
。
。
。
。
。

Thread 1 "python" received signal SIGSEGV, Segmentation fault.
0x00007fff905d183b in createInferRuntime_INTERNAL ()
   from /home/l/anaconda3/envs/lane_det/lib/python3.7/site-packages/tensorrt_libs/libnvinfer.so.8
(gdb) Quit

	

原因分析:

看到上面的问题,考虑到可能是cuda和tensort的版本版本不一致。。。。。就想着从这方面来解决!!!

这里使用的是cuda10.2的版本,所以就想看看可以使用的对应的版本的tensorrt。tensorrt官网。。。。
可以看到cuda10.2可以适用于tensorrt8.0.1或者8.4的版本

但是我们这里是终端直接安装的tensorrt

 pip install tensorrt

结果就是这里安装的版本是8.6.1最新的

为此就想卸载该版本,下载指定版本的

conda uninstall tensorrt

先是下载tensorrt8.0.1

(lane_det) l@l:/line_detection/UFLD-v2$ pip install tensorrt==8.0.1
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
ERROR: Ignored the following yanked versions: 0.0.1
ERROR: Could not find a version that satisfies the requirement tensorrt==8.0.1 (from versions: 0.0.1.dev5, 8.5.1.7, 8.5.2.2, 8.5.3.1, 8.6.0, 8.6.1, 8.6.1.post1, 9.0.0.post11.dev1, 9.0.0.post12.dev1, 9.0.1.post11.dev4, 9.0.1.post12.dev4, 9.1.0.post11.dev4, 9.1.0.post12.dev4, 9.2.0.post11.dev5, 9.2.0.post12.dev5)
ERROR: No matching distribution found for tensorrt==8.0.1

只好换一个版本来装

(lane_det) l@l:/line_detection/UFLD-v2$ pip install tensorrt==8.4.1
Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
ERROR: Ignored the following yanked versions: 0.0.1
ERROR: Could not find a version that satisfies the requirement tensorrt==8.4.1 (from versions: 0.0.1.dev5, 8.5.1.7, 8.5.2.2, 8.5.3.1, 8.6.0, 8.6.1, 8.6.1.post1, 9.0.0.post11.dev1, 9.0.0.post12.dev1, 9.0.1.post11.dev4, 9.0.1.post12.dev4, 9.1.0.post11.dev4, 9.1.0.post12.dev4, 9.2.0.post11.dev5, 9.2.0.post12.dev5)
ERROR: No matching distribution found for tensorrt==8.4.1

结果都是不行,然后电脑里是有安装上述的两个版本的tensorrt就想着找到对应的/home/l/anaconda3/envs/lane_det/lib/python3.7/site-packages/tensorrt_libs/libnvinfer.so.8 进行替换一下

之后就成功了

解决方案:

直接使用体版本的libnvinfer.so.8 替换 /home/l/anaconda3/envs/lane_det/lib/python3.7/site-packages/tensorrt_libs/libnvinfer.so.8

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
自编译tensorflow: 1.python3.5,tensorflow1.12; 2.支持cuda10.0,cudnn7.3.1,TensorRT-5.0.2.6-cuda10.0-cudnn7.3; 3.无mkl支持; 软硬件硬件环境:Ubuntu16.04,GeForce GTX 1080 TI 配置信息: hp@dla:~/work/ts_compile/tensorflow$ ./configure WARNING: --batch mode is deprecated. Please instead explicitly shut down your Bazel server using the command "bazel shutdown". You have bazel 0.19.1 installed. Please specify the location of python. [Default is /usr/bin/python]: /usr/bin/python3 Found possible Python library paths: /usr/local/lib/python3.5/dist-packages /usr/lib/python3/dist-packages Please input the desired Python library path to use. Default is [/usr/local/lib/python3.5/dist-packages] Do you wish to build TensorFlow with XLA JIT support? [Y/n]: XLA JIT support will be enabled for TensorFlow. Do you wish to build TensorFlow with OpenCL SYCL support? [y/N]: No OpenCL SYCL support will be enabled for TensorFlow. Do you wish to build TensorFlow with ROCm support? [y/N]: No ROCm support will be enabled for TensorFlow. Do you wish to build TensorFlow with CUDA support? [y/N]: y CUDA support will be enabled for TensorFlow. Please specify the CUDA SDK version you want to use. [Leave empty to default to CUDA 10.0]: Please specify the location where CUDA 10.0 toolkit is installed. Refer to README.md for more details. [Default is /usr/local/cuda]: /usr/local/cuda-10.0 Please specify the cuDNN version you want to use. [Leave empty to default to cuDNN 7]: 7.3.1 Please specify the location where cuDNN 7 library is installed. Refer to README.md for more details. [Default is /usr/local/cuda-10.0]: Do you wish to build TensorFlow with TensorRT support? [y/N]: y TensorRT support will be enabled for TensorFlow. Please specify the location where TensorRT is installed. [Default is /usr/lib/x86_64-linux-gnu]://home/hp/bin/TensorRT-5.0.2.6-cuda10.0-cudnn7.3/targets/x86_64-linux-gnu Please specify the locally installed NCCL version you want to use. [Default is to use https://github.com/nvidia/nccl]: Please specify a list of comma-separated Cuda compute capabilities you want to build with. You can find the compute capability of your device at: https://developer.nvidia.com/cuda-gpus. Please note that each additional compute capability significantly increases your build time and binary size. [Default is: 6.1,6.1,6.1]: Do you want to use clang as CUDA compiler? [y/N]: nvcc will be used as CUDA compiler. Please specify which gcc should be used by nvcc as the host compiler. [Default is /usr/bin/gcc]: Do you wish to build TensorFlow with MPI support? [y/N]: No MPI support will be enabled for TensorFlow. Please specify optimization flags to use during compilation when bazel option "--config=opt" is specified [Default is -march=native -Wno-sign-compare]: Would you like to interactively configure ./WORKSPACE for Android builds? [y/N]: Not configuring the WORKSPACE for Android builds. Preconfigured Bazel build configs. You can use any of the below by adding "--config=" to your build command. See .bazelrc for more details. --config=mkl # Build with MKL support. --config=monolithic # Config for mostly static monolithic build. --config=gdr # Build with GDR support. --config=verbs # Build with libverbs support. --config=ngraph # Build with Intel nGraph support. --config=dynamic_kernels # (Experimental) Build kernels into separate shared objects. Preconfigured Bazel build configs to DISABLE default on features: --config=noaws # Disable AWS S3 filesystem support. --config=nogcp # Disable GCP support. --config=nohdfs # Disable HDFS support. --config=noignite # Disable Apacha Ignite support. --config=nokafka # Disable Apache Kafka support. --config=nonccl # Disable NVIDIA NCCL support. Configuration finished 编译: bazel build --config=opt --verbose_failures //tensorflow/tools/pip_package:build_pip_package 卸载已有tensorflow: hp@dla:~/temp$ sudo pip3 uninstall tensorflow 安装自己编译的成果: hp@dla:~/temp$ sudo pip3 install tensorflow-1.12.0-cp35-cp35m-linux_x86_64.whl
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值