快速解决深度学习推理过程cuda或tensorRT推理速度变慢的办法【亲测有效】

简介: 快速解决深度学习推理过程cuda或tensorRT推理速度变慢的办法【亲测有效】

前言

这段时间里博主基于LabVIEW探索开发了一些工具包,包括OpenVIN工具包、TensoRT工具包以及一键训练工具包,这几天会整理一下分享给大家,今天要和大家分享的是好多朋友私信问我的深度学习推理过程中cuda或tensorRT变慢的问题。

一、场景再现

场景一

以yolov5为例,为了节省开销,深度学习模型导入后,相机实时抓图,条件触发推理检测,也就是只有满足某个条件,才进行推理检测。在该场景下,发现使用CUDA加速推理检测的速度竟然比使用CPU实时循环抓图检测的速度都要慢,如下图所示,分别为使用CPU实现加速推理,使用CUDA实现加速推理,条件触发使用CUDA实现加速推理所用时间(同一个程序在同一个电脑检测相同场景物体)。

  • 使用CPU实现实时物体检测,检测一帧大概68ms
    image.png

  • 使用CUDA实现实时物体检测,检测一帧大概18ms
    image.png

  • 使用CUDA实现实时物体检测,但选择条件触发进行检测,检测一帧大概100多ms
    image.png

场景二

依旧以yolov5为例,同一个程序在同一台电脑上使用同一个相机相机进行实时采集并检测的过程中,相机设置不同FPS,CUDA或者TensoRT加速推理的速度不同,相机FPS越高,CUDA或者TensoRT推理的速度越快,相反,相机FPS越低,CUDA或者TensoRT推理的速度越慢。

二、原因分析

摄像头速度或者采集到的图片输送速度跟不上推理速度,导致cuda"偷懒",从而使得整个推理变慢。那我们该如何解决cuda或tensorRT推理速度变慢呢?设置”显卡频率“。

三、解决办法

第1步:打开Nvidia控制面板,首选图形处理器里面选“高性能Nvidia处理器”

image.png

第2步:低延时模式选“超高”,“电源管理模式”选“最高性能优先”。

image.png
image.png

第3步:管理员模式打开cmd,输入nvidia-smi -q -d SUPPORTED_CLOCKS

image.png

第4步:nvidia-smi -lgc "显卡频率”,其中显卡频率设置为第一步中获取的最大值,如博主电脑显卡频率最大值为2100,则输入如下:

image.png

第5步:重启电脑,打开相关LabVIEW程序,即可解决上述所说的深度学习推理过程cuda或tensorRT推理速度变慢

注:如要恢复原来状态,cmd里输入:nvidia-smi -rgc,nvidia控制面板的选项调整到原来状态并重启电脑!

总结

以上就是今天要给大家分享的内容。如果有问题可以在评论区里讨论。

**如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏

目录
相关文章
|
7月前
|
机器学习/深度学习 并行计算 PyTorch
CUDA驱动深度学习发展 - 技术全解与实战
CUDA驱动深度学习发展 - 技术全解与实战
287 1
|
2月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
深度学习之格式转换笔记(三):keras(.hdf5)模型转TensorFlow(.pb) 转TensorRT(.uff)格式
将Keras训练好的.hdf5模型转换为TensorFlow的.pb模型,然后再转换为TensorRT支持的.uff格式,并提供了转换代码和测试步骤。
101 3
深度学习之格式转换笔记(三):keras(.hdf5)模型转TensorFlow(.pb) 转TensorRT(.uff)格式
|
2月前
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习之格式转换笔记(一):模型文件pt转onnx转tensorrt格式实操成功
关于如何将深度学习模型从PyTorch的.pt格式转换为ONNX格式,然后再转换为TensorRT格式的实操指南。
203 0
深度学习之格式转换笔记(一):模型文件pt转onnx转tensorrt格式实操成功
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习之人类水平的语言推理
基于深度学习的人类水平的语言推理,是当前自然语言处理(NLP)和人工智能领域的重要研究方向之一。语言推理的核心在于理解语言中蕴含的复杂语义和逻辑关系,并根据上下文进行推断。
35 3
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习之复杂推理与逻辑学习
基于深度学习的复杂推理与逻辑学习是当前人工智能领域中的一个前沿研究方向,旨在结合深度学习与传统逻辑推理的优势,使机器能够在处理复杂任务时具备更强的推理能力。
38 2
|
3月前
|
机器学习/深度学习 监控 并行计算
深度学习之生物网络推理
基于深度学习的生物网络推理利用深度学习技术来解析和理解生物网络(如基因调控网络、代谢网络、蛋白质-蛋白质相互作用网络等)的复杂关系和动态行为。
52 5
|
4月前
|
机器学习/深度学习 并行计算 PyTorch
PyTorch与CUDA:加速深度学习模型训练的最佳实践
【8月更文第27天】随着深度学习应用的广泛普及,高效利用GPU硬件成为提升模型训练速度的关键。PyTorch 是一个强大的深度学习框架,它支持动态计算图,易于使用且高度灵活。CUDA (Compute Unified Device Architecture) 则是 NVIDIA 开发的一种并行计算平台和编程模型,允许开发者直接访问 GPU 的并行计算能力。本文将详细介绍如何利用 PyTorch 与 CUDA 的集成来加速深度学习模型的训练过程,并提供具体的代码示例。
173 1
|
4月前
|
机器学习/深度学习 自然语言处理 自动驾驶
深度学习之知识推理与深度学习结合
基于深度学习的知识推理是将深度学习模型与传统的知识表示和推理技术相结合,以实现更加智能和高效的决策和预测能力。
79 2
|
7月前
|
机器学习/深度学习 并行计算 算法框架/工具
Anaconda+Cuda+Cudnn+Pytorch(GPU版)+Pycharm+Win11深度学习环境配置
Anaconda+Cuda+Cudnn+Pytorch(GPU版)+Pycharm+Win11深度学习环境配置
1040 3
|
7月前
|
机器学习/深度学习 并行计算 PyTorch
PyTorch与CUDA:加速深度学习训练
【4月更文挑战第18天】本文介绍了如何使用PyTorch与CUDA加速深度学习训练。CUDA是NVIDIA的并行计算平台,常用于加速深度学习中的矩阵运算。PyTorch与CUDA集成,允许开发者将模型和数据迁移到GPU,利用`.to(device)`方法加速计算。通过批处理、并行化策略及优化技巧,如混合精度训练,可进一步提升训练效率。监控GPU内存和使用调试工具确保训练稳定性。PyTorch与CUDA的结合对深度学习训练的加速作用显著。