本课程以TensorRT和PyTorch为主,不涉及模型的训练,例如蒸馏、剪枝,仅以工程角度考虑,如何导出模型、让模型尽可能高性能以及如何上线交付(多线程)。部署的优化思想、导出方式、解决问题流程,可借鉴到其他算法场景,例如3399、安卓等等。

算法部署,学什么

介绍 - 图1

杜老还开发了自动环境配置的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 以上是最佳的学习环境,若按照要求配置,学习效率最好 ::: 自动环境
  1. 环境配置一直是该系列课程最艰难的事情
  2. 杜老提供自动环境配置/代码下载工具:trtpy,依赖于python环境的一个包。超好用,跪服!!!
  3. 提供的案例代码可立即运行,环境自动配置、数据自动下载 | image.png | video1-get-env.mp4 (2.93MB) | | —- | —- |

运行案例 video1-get-templ.mp4 (16.13MB)运行系列 video-series.mp4 (4.61MB)

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卸载

  1. 去掉快捷指令vim ~/.bashrc中删除trtpy
  2. pip uninstall trtpy
  3. 删除缓存文件rm -rf /datav/software/anaconda3/lib/python3.9/site-packages/trtpy (注意这个路径是我电脑的)
  4. 删除缓存目录rm -rf ~/.cache/trtpy
  5. 删除模型缓存rm -rf ~/.trtpy

    工具

    工具篇:vscode 及 其他.pdf
    image.png
    在终端输入ll,等价于ls -alF,相当于缩写的功能,方便快捷。