【PyTorch】模型部署
Backto PyTorch Index
最佳实践 Best Practice
2020-07-03
Server/Nvidia :C++ / TensorRT
Mobile/Non-Nvidia : TVM
技术路径 Paths
TorchScript-Libtorch / offcial C++ frontend
官方推荐和主代码演进的方向
The PyTorch team is betting heavily on TorchScript/libtorch as the path for going from research to production. Our ideal workflow is for the user to prototype in Python/PyTorch eager, convert to TorchScript, then use our compiler infrastructure to optimize and potentially lower your model to specialized hardware.
Pro: 官方出品,覆盖面广
Con:当前主要是从 Python 到 C++ 的转写,利用的是C++语言的加速特性。而更为关键的硬件加速涉及不多。
TVM
TVM 需要已知输入 Tensor 的 dimensions,所以一般是作为JIT 使用,确实是比官方 JIT 要快。
但还是那个问题,无法激发硬件的性能。
TensorRT
Nvidia 官方出品,闭源,暴力。
官方转换组件: torch2trt, 官方提供了在 Jetson Nano 和 Xavier 平台上的测试,提速可谓暴力十足。