Eigen Attention: Attention in Low-Rank Space for KV Cache Compression
Utkarsh Saxena, Gobinda Saha, Sakshi Choudhary, Kaushik Roy
TL;DR
KV cache memory becomes a bottleneck for long-context LLM inference. Eigen Attention performs attention in a low-rank space by deriving offline basis vectors via SVD on calibration data and integrating them into the weight matrices, enabling KV cache compression and faster attention. The approach is orthogonal to existing compression methods and demonstrates up to 40% KV cache reduction and up to 60% latency improvements across OPT, MPT, and Llama families, with modest accuracy reductions. RoPE compatibility and layer-wise rank allotment further enhance practicality for long-sequence generation in real-world deployments.
Abstract
Large language models (LLMs) represent a groundbreaking advancement in the domain of natural language processing due to their impressive reasoning abilities. Recently, there has been considerable interest in increasing the context lengths for these models to enhance their applicability to complex tasks. However, at long context lengths and large batch sizes, the key-value (KV) cache, which stores the attention keys and values, emerges as the new bottleneck in memory usage during inference. To address this, we propose Eigen Attention, which performs the attention operation in a low-rank space, thereby reducing the KV cache memory overhead. Our proposed approach is orthogonal to existing KV cache compression techniques and can be used synergistically with them. Through extensive experiments over OPT, MPT, and Llama model families, we demonstrate that Eigen Attention results in up to 40% reduction in KV cache sizes and up to 60% reduction in attention operation latency with minimal drop in performance. Code is available at https://github.com/UtkarshSaxena1/EigenAttn.
