一、简介
1、本课程以TensorRT和PyTorch为主,不涉及模型的训练,例如蒸馏、枝减,仅以工程角度考虑,如何导出模型、让模型尽可能高性能,以及如何上线交付(多线程)。
2、部署的优化思想、导出方式、解决问题流程,可借鉴到其他算法场景。
二、内容
精简CUDA编程
能写图像处理、后处理、理解索引计算,这是高性能的基础。
TensorRT基础
如何编译模型、推理模型,onnx如何控制,插件怎么写,解析器怎么配。深入理解tensorRT。
项目实战
拿真实的项目,实际操作并在tensorRT上以高性能推理起来。学习拿到项目如何分析,问题如何解决。
三、环境
语言,以C++和Python为主
C++的编译,以Makefile为主(可自动配置环境,无需懂)
IDE,用Visual Studio Code
操作系统,通常可以(Windows本机 + Ubuntu服务器,用ssh连接)或者(Ubuntu本机),运行环境必须是linux
显卡,NVIDIA的显卡,并安装有450以上的显卡驱动为佳
Python方面,anaconda并配置有Python3.6/3.7/3.8/3.9任意一个,同时安装PyTorch1.8及以上
四、自动配置环境-trtpy
1、安装,pip install trtpy -U,要求python36/37/38/39
2. 配置快捷指令,echo alias trtpy=\"python -m trtpy\" >> ~/.bashrc
3. 使得快捷指令生效,source ~/.bashrc
4. 查看当前trtpy信息,trtpy info
5. 查看当前课程清单,trtpy list-templ
6. 下载环境,trtpy get-env,这个步骤不影响本机环境
7. 拉取一个模版,trtpy get-templ cpp-trt-mnist
8. 进入模版文件夹,cd cpp-trt-mnist
9. 运行模版,make run
如果不满足环境要求, 依旧可以下载代码, 但不能自动配置
五、代码
1、查看当前课程代码系列,trtpy list-series
2. 获取第一个系列,trtpy get-series cuda-driver-api
3. 进入系列的目录,cd cuda-driver-api
4. 运行当前章节,make run
5. 查看当前章节,trtpy series-detail
6. 查看下一个章节,trtpy change-proj next
7. 查看特定章节,trtpy change-proj 1.2
8. 查看上一个章节,trtpy change-proj prev
9. 运行当前章节,make run