FP6-LLM: Efficiently Serving Large Language Models Through FP6-Centric Algorithm-System Co-Design

📄 arXiv: 2401.14112v2 📥 PDF

作者: Haojun Xia, Zhen Zheng, Xiaoxia Wu, Shiyang Chen, Zhewei Yao, Stephen Youn, Arash Bakhtiari, Michael Wyatt, Donglin Zhuang, Zhongzhu Zhou, Olatunji Ruwase, Yuxiong He, Shuaiwen Leon Song

分类: cs.LG, cs.AI, cs.AR

发布日期: 2024-01-25 (更新: 2024-03-04)

备注: Adding URL link of the source code

🔗 代码/项目: GITHUB


💡 一句话要点

提出FP6-LLM以解决大语言模型推理效率问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 大语言模型 六位量化 GPU推理 Tensor Core 性能优化 内核设计 计算效率

📋 核心要点

  1. 现有方法在FP6量化支持上存在不足,无法有效利用Tensor Core,导致LLM推理性能提升困难。
  2. 论文提出TC-FPx,首个全面支持不同量化位宽的浮点权重的GPU内核设计,解决了内存访问和去量化开销问题。
  3. 实验结果显示,FP6-LLM在单个GPU上推理LLaMA-70b时,吞吐量比FP16基线提高了1.69倍至2.65倍。

📝 摘要(中文)

六位量化(FP6)能够有效减少大语言模型(LLMs)的大小,并在各种应用中保持模型质量。然而,现有系统未能为FP6量化提供Tensor Core支持,并在LLM推理时难以实现实际性能提升。由于模型权重的不规则位宽导致内存访问不友好,以及权重去量化的高运行时开销,FP6量化在GPU上的支持面临挑战。为了解决这些问题,我们提出了TC-FPx,这是首个全面支持不同量化位宽的浮点权重的GPU内核设计方案。我们将TC-FPx内核集成到现有推理系统中,提供了新的端到端支持(称为FP6-LLM),在推理成本和模型质量之间实现了更好的权衡。实验表明,FP6-LLM能够仅使用单个GPU推理LLaMA-70b,达到比FP16基线高出1.69倍至2.65倍的标准化推理吞吐量。

🔬 方法详解

问题定义:论文要解决的具体问题是如何在GPU上有效支持FP6量化,以提高大语言模型的推理效率。现有方法面临的痛点包括模型权重的不规则位宽导致的内存访问不友好,以及权重去量化的高运行时开销。

核心思路:论文的核心解决思路是设计TC-FPx内核,提供统一的Tensor Core支持,能够处理不同量化位宽的浮点权重,从而优化内存访问和去量化过程。这样的设计旨在提升推理性能并降低计算成本。

技术框架:整体架构包括TC-FPx内核与现有推理系统的集成,形成FP6-LLM的端到端支持。主要模块包括量化处理、内存管理和推理执行等,确保高效的计算和内存利用。

关键创新:最重要的技术创新点在于TC-FPx内核的设计,它是首个全面支持不同量化位宽的浮点权重的GPU内核,与现有方法相比,显著提升了推理效率和模型质量。

关键设计:关键设计包括内核的参数设置、内存访问策略以及去量化算法的优化,确保在不同量化位宽下都能实现高效的推理性能。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果显示,FP6-LLM在单个GPU上推理LLaMA-70b时,标准化推理吞吐量比FP16基线提高了1.69倍至2.65倍,展示了其在推理效率上的显著提升,证明了FP6量化的有效性。

🎯 应用场景

该研究的潜在应用领域包括自然语言处理、对话系统和机器翻译等需要高效推理的大语言模型。FP6-LLM的设计可以显著降低计算资源消耗,提高模型在实际应用中的可用性和响应速度,具有重要的实际价值和未来影响。

📄 摘要(原文)

Six-bit quantization (FP6) can effectively reduce the size of large language models (LLMs) and preserve the model quality consistently across varied applications. However, existing systems do not provide Tensor Core support for FP6 quantization and struggle to achieve practical performance improvements during LLM inference. It is challenging to support FP6 quantization on GPUs due to (1) unfriendly memory access of model weights with irregular bit-width and (2) high runtime overhead of weight de-quantization. To address these problems, we propose TC-FPx, the first full-stack GPU kernel design scheme with unified Tensor Core support of float-point weights for various quantization bit-width. We integrate TC-FPx kernel into an existing inference system, providing new end-to-end support (called FP6-LLM) for quantized LLM inference, where better trade-offs between inference cost and model quality are achieved. Experiments show that FP6-LLM enables the inference of LLaMA-70b using only a single GPU, achieving 1.69x-2.65x higher normalized inference throughput than the FP16 baseline. The source code is publicly available at https://github.com/usyd-fsalab/fp6_llm.