LServe: Efficient Long-sequence LLM Serving with Unified Sparse Attention
Shang Yang, Junxian Guo, Haotian Tang, Qinghao Hu, Guangxuan Xiao, Jiaming Tang, Yujun Lin, Zhijian Liu, Yao Lu, Song Han
TL;DR
LServe tackles the bottlenecks of long-context LLM serving by unifying block-sparse attention into a single framework that accelerates both prefilling and decoding. It combines static sparsity via streaming heads with dynamic sparsity through hierarchical KV paging, supported by core kernel innovations and a reusable page-selector to minimize overhead. Empirical results show up to 2.9x prefilling and 1.3–2.1x decoding speedups across multiple models and GPUs, while preserving long-context performance on benchmarks like LongBench and NIAH. The approach offers a practical, end-to-end improvement over state-of-the-art systems, enabling efficient long-context reasoning and document analysis at scale.
Abstract
Large language models (LLMs) have shown remarkable potential in processing long sequences and complex reasoning tasks, yet efficiently serving these models remains challenging due to the quadratic computational complexity of attention in the prefilling stage and the large memory footprint of the KV cache in the decoding stage. To address these issues, we introduce LServe, an efficient system that accelerates long-sequence LLM serving via hybrid sparse attention. This method unifies different hardware-friendly, structured sparsity patterns for both prefilling and decoding attention into a single framework, where computations on less important tokens are skipped block-wise. LServe demonstrates the compatibility of static and dynamic sparsity in long-context LLM attention. This design enables multiplicative speedups by combining these optimizations. Specifically, we convert half of the attention heads to nearly free streaming heads in both the prefilling and decoding stages. Additionally, we find that only a constant number of KV pages is required to preserve long-context and reasoning capabilities, irrespective of context length. We then design a hierarchical KV page selection policy that dynamically prunes KV pages based on query-centric similarity. On average, LServe accelerates LLM prefilling by up to 2.9x and decoding by 1.3-2.1x over vLLM, maintaining long-context accuracy. Code is released at https://github.com/mit-han-lab/omniserve.
