专栏名称: GiantPandaCV
专注于机器学习、深度学习、计算机视觉、图像处理等多个方向技术分享。团队由一群热爱技术且热衷于分享的小伙伴组成。我们坚持原创,每天一到两篇原创技术分享。希望在传播知识、分享知识的同时能够启发你,大家一起共同进步(・ω<)☆
目录
相关文章推荐
GiantPandaCV  ·  vLLM源码之框架执行 ·  6 天前  
今天看啥  ›  专栏  ›  GiantPandaCV

TRT-LLM中的Quantization GEMM(Ampere Mixed GEMM)CUTLASS 2.x 课程学习笔记

GiantPandaCV  · 公众号  · 3D  · 2024-08-01 22:53

主要观点总结

文章介绍了在TRT-LLM中如何基于CUTLASS 2.x实现PerChannel/AWQ/SmoothQuant等量化方法在模型推理过程的计算,并详细记录了每一页Slides的要点。文章讨论了TRT-LLM中的量化主要分为Mixed GEMM和Universal GEMM两类,以及不同量化技术的实现方法和特点。同时,也提到了TRT-LLM中对于权重Layout的设计,以提高性能。

关键观点总结

关键观点1: TRT-LLM中的量化方法

TRT-LLM中的量化主要分为Mixed GEMM和Universal GEMM两类,其中Mixed GEMM的Activation和Weight的数据类型不同,而Universal GEMM的数据类型相同。

关键观点2: PerChannel/AWQ/SmoothQuant等量化技术的实现

PerChannel在推理时会先对Weight进行乘Scales的反量化,AWQ和GPTQ的权重是GroupWise的,需要在反量化时乘以Scales并加上Zeros。SmoothQuant不需要在GEMM前做反量化,其Scale在输出时应用。

关键观点3: 权重Layout设计

TRT-LLM中为了性能考虑对B矩阵的Layout进行调整,例如采用ColumnMajorTileInterleave的Layout,以利用高效的128比特load指令,以及确保A, B矩阵都能用ld.128指令进行load。


文章预览

在LLM的推理和部署中,低精度量化对于性能的提升十分关键,本次分享将为大家介绍TRT-LLM中是如何基于CUTLASS 2.x来实现PerChannel/AWQ/SmoothQuant等量化方法在模型推理过程的计算。Slides来自BiliBili NVIDIA英伟达频道 上传的《TensorRT-LLM中的 Quantization GEMM(Ampere Mixed GEMM)的 CUTLASS 2.x 实现讲解》视频讲解。这里参考视频并更详细记录了每一页Slides的要点,通过这个视频了解下在TRT-LLM中如何使用CUTLASS 2.x来自定义Mixed GEMM算子。我将其作为CUDA-MODE的CUTLASS课程的前置学习内容。 总览 & 目录 课程目录如本章Slides所示,作者首先会介绍一下TRT-LLM推理的一些量化方法,然后通过没有代码的方式介绍了一下CUTLASS 2.x的整体流程以及如果我们想实现Mixed GEMM需要做什么修改,最后挑重点讲了一下为什么TRT-LLM里面关于Mixed GEMM在Ampere上要这么设计Weight Layout,主要是从性能以及CU ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览