H$_2$O: Heavy-Hitter Oracle for Efficient Generative Inference of Large Language Models

AI-generated keywords: Large Language Models (LLMs)

AI-generated Key Points

The license of the paper does not allow us to build upon its content and the key points are generated using the paper metadata rather than the full article.

  • The paper addresses the cost-prohibitive nature of deploying Large Language Models (LLMs) for long-content generation applications.
  • Storing a large amount of transient state information known as the KV cache in GPU memory alongside model parameters significantly increases memory usage.
  • The authors propose a novel approach to reduce the memory footprint of the KV cache by identifying and removing "Heavy Hitters" (H$_2$), which are tokens that contribute most to the value when computing attention scores.
  • They introduce Heavy Hitter Oracle (H$_2$O), a KV cache eviction policy designed to retain a balance between recent tokens and H$_2$ tokens.
  • The authors provide theoretical guarantees for their novel eviction algorithm, which is formulated as a dynamic submodular problem.
  • The accuracy of their algorithm is validated across various tasks using OPT, LLaMA, and GPT-NeoX models.
  • Implementing H$_2$O with 20% heavy hitters improves throughput by up to 29x compared to leading inference systems DeepSpeed Zero-Inference, Hugging Face Accelerate, and FlexGen on OPT-6.7B and OPT-30B models.
  • H$_2$O also reduces latency by up to 1.9x with the same batch size.
  • Code for implementing H$_2$O is available at https://github.com/FMInference/H2O.
Also access our AI generated: Comprehensive summary, Lay summary, Blog-like article; or ask questions about this paper to our AI assistant.

Authors: Zhenyu Zhang, Ying Sheng, Tianyi Zhou, Tianlong Chen, Lianmin Zheng, Ruisi Cai, Zhao Song, Yuandong Tian, Christopher Ré, Clark Barrett, Zhangyang Wang, Beidi Chen

Abstract: Large Language Models (LLMs), despite their recent impressive accomplishments, are notably cost-prohibitive to deploy, particularly for applications involving long-content generation, such as dialogue systems and story writing. Often, a large amount of transient state information, referred to as the KV cache, is stored in GPU memory in addition to model parameters, scaling linearly with the sequence length and batch size. In this paper, we introduce a novel approach for implementing the KV cache which significantly reduces its memory footprint. Our approach is based on the noteworthy observation that a small portion of tokens contributes most of the value when computing attention scores. We call these tokens Heavy Hitters (H$_2$). Through a comprehensive investigation, we find that (i) the emergence of H$_2$ is natural and strongly correlates with the frequent co-occurrence of tokens in the text, and (ii) removing them results in significant performance degradation. Based on these insights, we propose Heavy Hitter Oracle (H$_2$O), a KV cache eviction policy that dynamically retains a balance of recent and H$_2$ tokens. We formulate the KV cache eviction as a dynamic submodular problem and prove (under mild assumptions) a theoretical guarantee for our novel eviction algorithm which could help guide future work. We validate the accuracy of our algorithm with OPT, LLaMA, and GPT-NeoX across a wide range of tasks. Our implementation of H$_2$O with 20% heavy hitters improves the throughput over three leading inference systems DeepSpeed Zero-Inference, Hugging Face Accelerate, and FlexGen by up to 29$\times$, 29$\times$, and 3$\times$ on OPT-6.7B and OPT-30B. With the same batch size, H2O can reduce the latency by up to 1.9$\times$. The code is available at https://github.com/FMInference/H2O.

Submitted to arXiv on 24 Jun. 2023

Ask questions about this paper to our AI assistant

You can also chat with multiple papers at once here.

The license of the paper does not allow us to build upon its content and the AI assistant only knows about the paper metadata rather than the full article.

AI assistant instructions?

Results of the summarizing process for the arXiv paper: 2306.14048v1

This paper's license doesn't allow us to build upon its content and the summarizing process is here made with the paper's metadata rather than the article.

In their paper titled "H$_2$O: Heavy-Hitter Oracle for Efficient Generative Inference of Large Language Models," Zhenyu Zhang, Ying Sheng, Tianyi Zhou, Tianlong Chen, Lianmin Zheng, Ruisi Cai, Zhao Song, Yuandong Tian, Christopher Ré, Clark Barrett, Zhangyang Wang, and Beidi Chen address the cost-prohibitive nature of deploying Large Language Models (LLMs) for applications involving long-content generation such as dialogue systems and story writing. The authors highlight that storing a large amount of transient state information known as the KV cache in GPU memory alongside model parameters can significantly increase memory usage. This cache scales linearly with the sequence length and batch size. To tackle this issue and reduce the memory footprint of the KV cache, the authors propose a novel approach based on their observation that only a small portion of tokens contributes most to the value when computing attention scores. They refer to these tokens as Heavy Hitters (H$_2$). Through extensive investigation they find that H$_2$ naturally emerges and strongly correlates with frequent token co-occurrence in text. Removing these heavy hitters leads to significant performance degradation. Based on their insights, the authors introduce Heavy Hitter Oracle (H$_2$O), a KV cache eviction policy designed to dynamically retain a balance between recent tokens and H$_2$ tokens. They formulate the KV cache eviction as a dynamic submodular problem and provide theoretical guarantees for their novel eviction algorithm. The accuracy of their algorithm is validated across various tasks using OPT, LLaMA, and GPT-NeoX models. The implementation of H$_2$O with 20% heavy hitters improves throughput by up to 29x , 29x , and 3x compared to leading inference systems DeepSpeed Zero-Inference , Hugging Face Accelerate , and FlexGen on OPT-6 .7B and OPT -30B . Furthermore , H $ _ 2 $ O reduces latency by up to 1 .9 x with the same batch size . The authors provide code for their implementation of H $ _ 2 $ O at https://github .com/FMInference/H2O .
Created on 29 Jul. 2023

Assess the quality of the AI-generated content by voting

Score: 0

Why do we need votes?

Votes are used to determine whether we need to re-run our summarizing tools. If the count reaches -10, our tools can be restarted.

The previous summary was created more than a year ago and can be re-run (if necessary) by clicking on the Run button below.

The license of this specific paper does not allow us to build upon its content and the summarizing tools will be run using the paper metadata rather than the full article. However, it still does a good job, and you can also try our tools on papers with more open licenses.

Similar papers summarized with our AI tools

Navigate through even more similar papers through a

tree representation

Look for similar papers (in beta version)

By clicking on the button above, our algorithm will scan all papers in our database to find the closest based on the contents of the full papers and not just on metadata. Please note that it only works for papers that we have generated summaries for and you can rerun it from time to time to get a more accurate result while our database grows.

Disclaimer: The AI-based summarization tool and virtual assistant provided on this website may not always provide accurate and complete summaries or responses. We encourage you to carefully review and evaluate the generated content to ensure its quality and relevance to your needs.