TensorRT 进阶打怪 | AI部署与落地全面学习
对于当下的AI时代,如何才可以作为一个合格的工程师?读读论文,看看开源代码?然后各种白嫖?如果是前几年的AI时代而言,或者这是一个可以混的过去的工程师,但是对于当下而言,如果你对于AI部署一点也不了解,可能你就不是一个合格的AI算法工程师!!!
扫描上方二维码,即可查看AI部署全方位知识1、AI部署都需要哪些知识?
那么对于AI算法部署而言,我们究竟有哪些知识需要学习呢?这里给大家推荐一个全网最强的AI部署的教程,带你全面认识ONNX、TensorRT的Pipeline,同时带你使用C++进行多线程以及线程知识的进阶。
同时还提供了约52个学习案例代码,从浅到深,逐步递进学习。
2、具体内容展示
2.1 CUDA-Driver
这部分主要是对于CUDA驱动编程的学习:
- 学习cuda初始化;
- 增加检查功能;
- cuda的上下文;
- 使用驱动api进行内存分配,以及DMA技术。
2.2 CUDA-Runtime
这部分主要是对于CUDA-Runtime的学习,主要涉及的内容:
- CUDA-Runtime的学习
- GPU的分配管理问题
- cudaStream管理问题
- 核函数
- 线程的布局设计
- 共享内存的操作
- 归月求和的实现
- 原子操作
- 仿射变换双线性插值的实现,YOLOv5的预处理等等
2.3 TensorRT基础学习
1、TensorRT的Python接口搭建模型
2、常见TensorRT部署模型的形式
3、TensorRT基础部分涉及到的内容
2.4 部分工业级案例示意
1、AlphaPose姿态检测部署案例
关于Alphapose,由于后处理比较复杂,这也会带你学习如何将其放到了onnx中进行后处理的加速。
2、UNet部署
这个案例的目的是学习如何处理场景分割的以及场景分割的预处理后处理逻辑。
预处理采用warpaffine时,后处理可以使用逆变换得到mask
3、自动驾驶部署案例
这个案例中,存在4个模型,分别是:YoloX车辆检测、UFLD车道线检测、道路分割、深度估计
4、多线程技术点于封装
- 对tensorRT的封装,更像是对推理引擎的封装
- 封装的意义在于对技术的标准化、工具化,能够是的使用时更加便利,效率更高,定制更多的默认行为
- 封装推理引擎的思想,还可以应用到更多其他地方。嵌入式、等等。由于大多推理引擎提供的默认方式不够友好,对其进行包装,能够很好的使得自己的代码具有复用性,一套代码多处用
- 还可以实现,同样的封装,通过简单的配置,切换不同的推理后端。这都取决于需求
- 我们的唯一目的就是让工作更简单,让代码复用性更强,让技术可以沉淀
5、旋转目标检测部署案例
适合人群
如果你在你的岗位只负责算法的研发于改进,这个是绝佳的学习机会;
如果你是在学校的小白,接触不到实际的落地部署项目,这个就是你的敲门砖;
如果你想进一步优化你的部署项目,这个课程将让你耳目一新,事半功倍。
扫描上方二维码即可参与AI部署的学习,提升自我!
评论