DCAILGNov 2, 2024

NEO: Saving GPU Memory Crisis with CPU Offloading for Online LLM Inference

arXiv:2411.01142v139 citationsh-index: 13MLSys
Originality Incremental advance
AI Analysis

This addresses the problem of wasted GPU compute due to memory limits for developers and companies running LLM applications, though it is an incremental improvement on existing offloading techniques.

The paper tackles the GPU memory bottleneck in online LLM inference by proposing NEO, a system that offloads attention compute and KV cache to the CPU, achieving up to 7.5x higher throughput on T4 GPUs while maintaining latency.

Online LLM inference powers many exciting applications such as intelligent chatbots and autonomous agents. Modern LLM inference engines widely rely on request batching to improve inference throughput, aiming to make it cost-efficient when running on expensive GPU accelerators. However, the limited GPU memory has largely limited the batch size achieved in practice, leaving significant GPU compute resources wasted. We present NEO, an online LLM inference system that offloads part of attention compute and KV cache states from the GPU to the local host CPU, effectively increasing the GPU batch size and thus inference throughput. To this end, NEO proposes asymmetric GPU-CPU pipelining and load-aware scheduling to balance GPU and CPU loads and fully utilize their compute and memory resources. We evaluate NEO on a wide range of workloads (i.e., code generation, text summarization), GPUs (i.e., T4, A10G, H100), and LLM models (i.e., 7B, 8B, 70B). NEO achieves up to 7.5$\times$, 26%, and 14% higher throughput compared to GPU-only approach on T4, A10G, and H100 GPUs, respectively, while maintaining the same latency; with more powerful CPUs, NEO achieves up to 79.3% throughput gain on A10G GPU.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes