章节 01
【导读】融合反量化与GEMM:LLM推理CUDA内核优化实践
介绍fused-dequant-gemm项目,核心是通过CUDA内核融合技术将INT8权重量化的反量化与GEMM合并,解决LLM推理的内存带宽瓶颈,减少DRAM消耗并提升性能。项目由zhangtina0103开源,发布于2026年6月6日GitHub。
正文
介绍 fused-dequant-gemm 项目,展示如何通过内核融合技术将INT8权重量化中的反量化与矩阵乘法合并,显著减少DRAM带宽消耗并提升推理性能。
章节 01
介绍fused-dequant-gemm项目,核心是通过CUDA内核融合技术将INT8权重量化的反量化与GEMM合并,解决LLM推理的内存带宽瓶颈,减少DRAM消耗并提升性能。项目由zhangtina0103开源,发布于2026年6月6日GitHub。
章节 02
LLM推理性能受DRAM带宽限制(batch size小)。INT8权重量化压缩权重4倍,但传统分离式操作(反量化为FP32再GEMM)引入不必要内存往返,抵消收益。
章节 03
项目通过内核融合,将反量化嵌入GEMM瓦片加载过程。传统路径:INT8→FP32缓冲区→GEMM;融合路径:INT8→寄存器/共享内存即时反量化→GEMM,消除中间缓冲区读写,降低内存流量约33%。
章节 04
采用分组对称INT8量化(每组128元素共享缩放因子)。实现三个CUDA内核:独立反量化、瓦片化GEMM、融合内核。融合内核在加载阶段即时反量化,避免写回全局内存。
章节 05
基准测试结果:融合式CUDA实现有效GFLOPS7100,内存带宽利用率198.4GB/s,延迟2.40ms,加速比3.38×;相比分离式提升15%性能,减少33%DRAM流量。
| 内核实现 | 有效GFLOPS | 内存带宽利用率 | 延迟 | 加速比 |
|---|---|---|---|---|
| Python未融合 | 2,100 | 45.2 GB/s | 8.12 ms | 1.00× |
| cuBLAS未融合 | 8,400 | 180.5 GB/s | 2.03 ms | 4.00× |
| CUDA分离式 | 6,200 | 133.1 GB/s | 2.75 ms | 2.95× |
| CUDA融合式 | 7,100 | 198.4 GB/s | 2.40 ms | 3.38× |
章节 06
Nsight监控指标显示融合后全局内存加载流量降低、无全局存储字节。关键洞察:小batch时权重量化最有效;融合消除中间张量内存流量;与TensorRT-LLM量化路径一致。
章节 07
适用场景:边缘设备、高吞吐服务、量化研究。扩展方向:FP8 KV缓存压缩、cuBLASLt INT8 GEMM基准、向量化瓦片加载。
章节 08
项目展示内核融合消除内存往返的关键范式,性能提升显著。为LLM推理优化工程师提供学习案例,揭示量化陷阱及解决方法。内存带宽优化技术在大模型时代愈发重要。