【网上下载源码】【grub 源码】【guvnor 源码】mblock源码

时间:2024-11-14 13:49:30 编辑:花果山补单平台源码 来源:tomcat dbcp 源码

1.利用TPU-MLIR实现LLM INT8量化部署

mblock源码

利用TPU-MLIR实现LLM INT8量化部署

       在年7月的源码进展中,我们已经成功将ChatGLM2-6B部署在BMX单芯片上,源码采用F量化模式,源码模型大小达GB,源码网上下载源码平均速度约为每秒3个token。源码为了进一步优化效率并减小存储负担,源码我们转向INT8量化部署。源码

       然而,源码传统的源码TPU-MLIR INT8量化策略对大型语言模型(LLM)并不适用。PTQ校准和QAT训练在LLM上成本高昂,源码可能需要1-2天,源码grub 源码且量化带来的源码误差在LLM中难以收敛,会导致精度大幅下降。源码因此,源码我们采取了ChatGLM2的源码W8A策略,只对GLMBlock中的guvnor 源码Linear Layer权重进行通道级量化,运算时恢复到F,这样可以保持%以上的余弦相似度,几乎无精度损失。

       在TPU-MLIR编译器的lowering阶段,我们特别处理了MatMul算子,cncusbcontroller源码针对权重维数为2的线性层,将其转换为W8AMatMul算子。如ChatGLM2的一个MatMul示例中,量化后的权重存储空间从MB降至MB,Scale数据仅占0.MB,netfuke源码存储空间减半。具体实现和源码可以在TPU-MLIR仓库查看。

       性能提升的关键在于W8AMatMul的后端优化。TPU架构中,W8A通过量化右矩阵数据,减少数据搬运时间,尤其当左矩阵数据量小而右矩阵数据量大时,性能提升更为显著。在LLM的推理过程中,prefill阶段的输入数据量取决于模型支持的最大文本长度,而decode阶段的输入固定,这决定了W8A在不同的阶段效果不同。

       将W8A应用到ChatGLM2-6B后的性能数据显示,这种策略显著地改善了模型的部署效率和存储效率。具体效果,通过详细的性能测试,我们可以看到显著的提升。