量化是一种加速推理的技术,量化算子并且仅仅支持前向传递。Pytorch支持int8量化,相比于float32,模型的大小减少4倍,内存要求减少4倍。与float32计算相比,对int8计算的硬件支持通常快2到4倍。大多数情况下,模型需要以float32精度训练,然后将模型转换为int8。如今,PyTorch支持在具有AVX2支持或者更高版本的x86 CPU或者ARM CPU上运行量化运算符。
(1)基础概念
pytorch提供了三种量化模型的方法:
- 训练后动态量化(Dynamic Quantization - 动态量化):最简单的量化形式,