01
OpenLake — your KV cache stops living in GPU memory
A Rust storage engine built on io_uring whose headline use is boring in the best way: it moves the KV cache off the GPU into host RAM and NVMe, and it does so without touching your serving code. Install the connector, run openlaked, then start vLLM with a --kv-transfer-config block naming the OpenLake nodes — that is the whole integration. The payoff is prefill you stop repeating: the inference engine writes a prefix once and reads it back in milliseconds, and in a multi-host configuration a prefix computed on one GPU box is served to every other box from the shared pool over RDMA. The project's own benchmark puts time-to-first-token at 66x faster on a cached 128K-context request, serving Gemma 4 31B on an H100, and the Show HN frames the same mechanism as roughly halving long-horizon inference cost. The rest of the engine is the unglamorous fleet plumbing that comes with owning models: an S3-compatible object store for checkpoints, fast small-file reads for training, and a place to park the massive conversations agents accumulate.
Reach for it when you self-host inference and the same system prompts, repo context, and conversation histories get re-prefilled all day across a fleet. Delete the line item where the fix for "the KV cache doesn't fit" was another accelerator. Tradeoff: every number here is the project's own, on their hardware, and the benefit scales with how much prefix you genuinely reuse — a fleet of cold, unrelated prompts recovers close to nothing, and you are adding a distributed storage daemon to the list of things that can page you at 3 a.m. Apache-2.0, 2,289 stars since April.