本课程以TensorRT和PyTorch为主,不涉及模型的训练,例如蒸馏、剪枝,仅以工程角度考虑,如何导出模型、让模型尽可能高性能以及如何上线交付(多线程)。部署的优化思想、导出方式、解决问题流程,可借鉴到其他算法场景,例如3399、安卓等等。
算法部署,学什么
杜老还开发了自动环境配置的python包,一步解决环境配置,并进行实验,力求更好的学习效率,同时还提供了约52个学习案例代码从浅到深,逐步递进学习。
所需的基础环境
- 语言,以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及以上 :::info 以上是最佳的学习环境,若按照要求配置,学习效率最好 ::: 自动环境
- 环境配置一直是该系列课程最艰难的事情
- 杜老提供自动环境配置/代码下载工具:
trtpy
,依赖于python环境的一个包。超好用,跪服!!! - 提供的案例代码可立即运行,环境自动配置、数据自动下载
|
|
| | —- | —- |
trtpy使用
trtpy是一个基于python体系下的自动环境配置工具和提供代码模版工厂的平台,还是一个tensorRT的python接口库 。用以提升CV算法工程师的开发效率,学习效率,解决环境配置,直面主题实现真正的快速高效学习、无配置,下载即可运行目前主要针对tensorRT、CUDA、C++、CV系列的学习和实验。
trtpy安装与环境配置
- 安装:
pip install trtpy -U
,要求python36/37/38/39 - 配置快捷指令:
echo alias trtpy=\"python -m trtpy\" >> ~/.bashrc
- 使得快捷指令生效:
source ~/.bashrc
- 查看当前trtpy信息:
trtpy info
- 查看当前课程清单:
trtpy list-templ
:查看所有模版 - 下载环境:
trtpy get-env
,这个步骤不影响本机环境 - 拉取一个模版:
trtpy get-templ cpp-trt-mnist
- 进入模版文件夹:
cd cpp-trt-mnist
- 运行模版:
make run
拉一个cpp的库,自动下载。常用的opencv库:
trtpy get-cpp-pkg opencv4.2
。opencv大家常常依赖,这在系统内是可选项。大多项目需要他 :::warning 如果不满足环境要求,依旧可以下载代码,但不能自动配置 :::trtpy系列课程代码
查看当前课程代码系列:
trtpy list-series
- 获取第一个系列:
trtpy get-series cuda-driver-api
- 进入系列的目录:
cd cuda-driver-api
- 运行当前章节:
make run
- 查看当前章节:
trtpy series-detail
- 查看下一个章节:
trtpy change-proj next
- 查看特定章节:
trtpy change-proj 1.2
- 查看上一个章节:
trtpy change-proj prev
- 运行当前章节:
make run
trtpy卸载
- 去掉快捷指令
vim ~/.bashrc
中删除trtpy
pip uninstall trtpy
- 删除缓存文件
rm -rf /datav/software/anaconda3/lib/python3.9/site-packages/trtpy
(注意这个路径是我电脑的) - 删除缓存目录
rm -rf ~/.cache/trtpy
- 删除模型缓存
rm -rf ~/.trtpy
工具
工具篇:vscode 及 其他.pdf
在终端输入ll
,等价于ls -alF
,相当于缩写的功能,方便快捷。