目录
前言
自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》,链接。记录下个人学习笔记,仅供自己参考
本次课程我们来学习课程第六章—部署分类器,一起来 CPU 端图像预处理方法以及速度对比
课程大纲可以看下面的思维导图
0. 简述
本小节目标:学习 CPU 端 bgr2rgb + normalization + hwc2chw 等图像预处理操作以及它们的性能比较
这节课程开始我们进入第六章节—部署分类器,这个章节偏实战,为大家准备了几个案例:
- 6.0-preprocess-speed-compare
- 6.1-deploy-classification
- 6.2-deploy-classification-advanced
- 6.3-int8-calibration
- 6.4-trt-engine-inspector
第六章节准备的案例一共是五个,第一个是 preprocess-speed-compare,这个小节主要教大家如果用 CPU 做图像预处理都有哪些方法,哪种方法访问图像速度更快;6.1 小节主要给大家介绍初步的分类器部署该怎么做,这个小节为了方便大家理解整个代码写得比较简单,也没有涉及到任何 C++ 的设计模式,所以整个代码看起来有很多缺陷;6.2 小节是针对 6.1 小节的一个扩展,主要是把 6.1 小节中的很多问题给解决掉,另外我们自己在写推理框架的时候应该考虑哪些东西
6.3 小节给大家介绍 int8 calibration,我们在前面或多或少都有涉及到量化这个概念,其中校准是量化的一个重要环节,校准包括很多校准器比如 MinMaxCalibrator、EntropyCalibrator、LegacyCalibrator 等等,我们在部署时该如何使用这些校准器呢?选择哪个校准器呢?这都是我们在 6.3 小节需要讨论的问题;最后 6.4 小节主要给大家介绍 TensorRT 官方工具 trt-engine-explorer,这个工具主要是帮助大家观察经过 TensorRT 优化前后的推理引擎在架构上有什么不同,去理解 TensorRT 做了哪些优化,哪些层融合了,哪些节点添加了,哪些节点被删除了,这个方便我们更好的去理解 TensorRT 的优化,同时可以帮助我们分析 TensorRT 中哪些优化是可以进一步改善的
后续的一些案例主要是讲 Transformer 的一些部署以及面临的一些问题,比如 attention 计算瓶颈,LayerNormalization 这种节点和 CNN 中 Conv 这种节点相比推理性能差异又在哪里,还有纯 Transformer 模型和纯 CNN 模型以及 CNN+Transformer 模型相比它们的计算效率以及计算密度有什么不同(目前 2024/8/17 尚未更新)
下面我们开始本次课程的学习
标签:src,compare,tar,timer,cpu,分类器,preprocess,speed,cv From: https://blog.csdn.net/qq_40672115/article/details/141284136