Running an LLM on CPU: what actually works

Everyone asks whether you can run a language model without a GPU. You can. The useful question is which jobs it is fast enough for — and this page answers that with numbers rather than enthusiasm.

The numbers, up front

On dedicated modern server cores, a quantized 7-8B model runs at roughly 5-15 tokens per second. A 13B quantized model on twelve gigabytes is slower again, usable for batch work rather than conversation. Anything at 70B is not a CPU proposition.

For scale: average reading speed is around 4-5 words per second, and a token is roughly three-quarters of a word. So 10 tokens/sec is about reading pace — fine when someone is reading the answer, frustrating when they are waiting for it to finish before acting.

Memory: how big a model fits

The rule of thumb is model file size plus room for context. A 7-8B model quantized to four bits is roughly 4-5 GB on disk and wants similar in memory, so 8 GB holds it with context headroom. A 13B at the same quantization wants 12 GB.

Context length costs memory too, and it is the setting people forget. Asking for a very long context on a small plan is a common cause of a model that loads and then dies mid-answer.

Quantization is the lever that makes any of this practical. Four-bit builds lose a little quality against the full-precision original — usually invisible in summarising, extraction and classification, occasionally visible in careful reasoning.

Which workloads fit comfortably

Classification and extraction. Short prompts, short answers, high volume — CPU is excellent here and the cost model is unbeatable, because nothing is metered.

RAG answers. Retrieval does the heavy lifting; the model writes a paragraph from the chunks. Perfectly comfortable.

Automation steps. A workflow that summarises an email or decides a category does not care about latency.

Internal chat. Acceptable, with the honest caveat that people used to a frontier model will notice both the speed and the capability gap.

Drafting long documents. Works, but the wait is real. Better as a background job than an interactive one.

Which workloads do not

Anything customer-facing where someone waits on the first token. Anything needing a large model’s reasoning. Anything with real concurrency — CPU inference does not batch the way a GPU does, so ten simultaneous users means roughly ten times the wait.

If that is your situation, rent GPU capacity from a specialist. We would rather say so than sell you a plan that disappoints, and it is why our catalogue lists vLLM without selling it.

A sensible hybrid

The arrangement that works for most teams is not all-local or all-cloud. Put a gateway such as LiteLLM in front, route high-volume and sensitive calls to a local Ollama endpoint, and send the genuinely hard questions to a frontier model. Applications see one endpoint and never need to know.

That way the flat-cost instance absorbs the traffic that would otherwise dominate the bill, and the expensive model is reserved for the work that justifies it.

Related reading

Questions

Questions

How many tokens per second on CPU?
Roughly 5-15 for a quantized 7-8B model on dedicated modern cores. Longer prompts and longer context reduce it; more cores help up to a point, then memory bandwidth becomes the limit.
How much RAM for a 7B model?
About 8 GB total: 4-5 GB for a four-bit build plus room for context and the process.
Is a quantized model much worse?
Four-bit quantization is usually indistinguishable for summarising, extraction and classification. Differences show up in multi-step reasoning and precise instruction following.
Does adding cores make it faster?
Up to a point. Beyond roughly the number of physical cores available to the instance, memory bandwidth limits throughput and extra cores stop helping.

Put your AI stack on your own box

Pick an app, pick a size, and have it running today. Month to month, cancel whenever.