Join our Newsletter — 33% off our NHI Course

Why does sticky session routing still waste GPU capacity for LLMs?

Sticky sessions pin users to nodes, but LLM efficiency depends on whether the node holds the relevant tokenised prefix, not only the same user. That means one user can still miss cache reuse, and different users can miss a shared prompt opportunity. The result is uneven utilisation and unnecessary recomputation.

Why sticky routing helps less than it first appears

Sticky sessions solve a load-balancing problem, not an LLM memory problem. They keep a user on the same node, but the expensive part of LLM serving is often cache reuse for the exact prompt prefix or conversation state already resident on that node. If the routed request does not hit that prefix, the GPU still recomputes tokens and the apparent affinity does not translate into higher effective throughput.

That is why “same user, same node” is weaker than it sounds. In practice, the node has to hold the right prefix, the right session state, and enough headroom at the right moment. When any of those conditions fail, sticky routing preserves locality in name only, while capacity is still spent on repeated prefill work.

Why cache locality, not user affinity, determines GPU efficiency

LLM inference economics are driven by two different phases: prefill and decode. Prefill is where the model processes the input prompt and builds the internal state that can sometimes be reused for similar requests. Decode is the token-by-token generation step. Sticky routing only helps if the request lands on a node that already has the relevant cached prefix or can derive benefit from a shared prompt pattern; user affinity alone does not guarantee that.

That distinction matters in multi-tenant or chat-heavy systems because different users often ask structurally similar questions, and the same user may not repeat an identical prefix. A smarter routing policy might therefore care more about prompt similarity, cache hit rate, queue depth, and GPU memory pressure than about which user last touched the session. For background on AI platform workload placement and identity-aware infrastructure patterns, see AI Infrastructure Workload Identity Guide.

That is also why LLM serving teams often see uneven utilisation: one node becomes “hot” with reusable prefixes while another processes mostly cold requests. Sticky routing can reduce cross-node hops, but it cannot manufacture cache hits. If the routing key is too coarse, the system can still waste GPU cycles on recomputation and leave locality benefits stranded on the wrong machine. For shared-prompt and retrieval-heavy systems, Permission-Aware RAG Guide is a useful complement when the cacheable object is retrieval state rather than chat affinity.

What operators should tune instead of assuming stickiness is enough

Capacity waste usually comes from a mismatch between the routing key and the thing that is actually reusable. If the system caches tokenised prefixes, embeddings, KV cache fragments, or other intermediate state, the scheduler should try to preserve locality around those artefacts, not just the user ID. That often means combining affinity with prompt hashing, session windowing, admission control, or cache-aware dispatch. In some architectures, the right answer is to relax stickiness so cold traffic can be spread more evenly across GPUs.

This is why the best optimisation target is not “keep the same user on the same node,” but “maximise the probability that a request lands where reusable state already exists without creating hotspots.” The trade-off is simple: stronger affinity can improve cache reuse for a subset of traffic, but it can also strand capacity, increase tail latency, and make utilisation look healthier than it is. Teams evaluating serving patterns should compare AI Security Platform Buyer’s Guide alongside platform features when they need to assess runtime controls, observability and policy enforcement across AI infrastructure.

Risk and Threat Considerations

Sticky routing can hide a form of operational fragility: the system appears stable because sessions stay attached, but the underlying GPU fleet may still be burning cycles on cache misses, queue imbalance, and repeated prefill. At scale, that inefficiency becomes a cost and availability risk, especially when traffic spikes or one node starts attracting disproportionately expensive prompts.

Failure mechanism: the routing policy optimises for user affinity instead of cache locality, so requests miss reusable prompt state, lose sharing opportunities across similar sessions, and force extra recomputation on already busy GPUs.

Impact: lower throughput, higher latency, uneven node saturation, and a false sense of efficiency that can lead operators to underprovision or misplace capacity.

Standards & Framework Alignment

This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.

NIST CSF 2.0 and NIST SP 800-53 Rev 5 set the governance and control requirements practitioners need to meet.

Framework Control / Reference Relevance
NIST CSF 2.0 GV.OV-01 — Outcomes Are Measured GPU waste from sticky routing is an efficiency outcome that should be measured.
ID.AM-01 — Physical Devices and Systems Inventory A serving fleet must know which nodes hold reusable state to route requests effectively.
Recommendation — Track cache hit rate and token throughput to verify the routing policy improves serving outcomes. Maintain an accurate inventory of serving nodes, caches and accelerator capacity before tuning affinity.
NIST SP 800-53 Rev 5 AU-12 — Audit Record Generation Observability over cache misses and node imbalance is needed to diagnose wasted capacity.
SC-39 — Process Isolation Node-level placement and shared serving state affect how workloads compete for GPU resources.
Recommendation — Log routing decisions and cache outcomes so you can prove where recomputation is occurring. Separate workloads and shared state so one hot session pattern does not starve other inference traffic.

Practitioner Guidance

What to prioritise: measure cache hit rate, prefill cost, and per-node token throughput before you treat stickiness as a meaningful optimisation. If those numbers do not improve, the affinity rule is probably helping routing simplicity more than GPU efficiency.

Decision rule: if the same user frequently sends semantically similar but not identical prompts, use a locality-aware strategy that keys off reusable prompt state or workload shape, not just session ID. If prompts are highly variable, reduce reliance on stickiness and let the balancer smooth utilisation.

Practitioner takeaway: sticky sessions are only useful when they preserve the right reusable state, otherwise they just pin traffic to a node and conceal wasted GPU work.