GUIDE, WITHOUT THE GUESSWORK

Self-Hosted AI Turns Capacity Planning Into a Deployment Problem

Adding a local LLM to your homelab isn't installing an app — it's a capacity decision. How to size the host (RAM, VRAM, disk, thermals) before the model decides for you.

Self-Hosted AI Turns Capacity Planning Into a Deployment Problem

Most self-hosted apps are a rounding error on a modern box. A local LLM is not. The moment you add Ollama or an inference server to a homelab, you've changed the machine's capacity math — and if you treat it like installing any other container, the model quietly takes the resources your other apps needed. Self-hosted AI is less an install and more a capacity decision you should make on purpose. (Once the host is sized, the per-service knobs — memory limits, timeouts — are covered in sizing self-hosted AI and search apps; this is the layer above that: the box itself.)

VRAM is the real currency for GPU inference

If you want responsive inference, you want a GPU, and the constraint is VRAM, not system RAM. The model's quantized weights must fit in VRAM (with room for context):

Spilling to system RAM works but collapses throughput. Size the GPU for the largest model you actually intend to run, not the smallest one you'll start with.

CPU inference is viable — if you set expectations

No GPU? CPU inference runs, but it's seconds-to-tokens, not tokens-per-second. It's fine for occasional, non-interactive use (a nightly summarization job) and frustrating for a chat UI. Budget plenty of system RAM (the whole model sits in it) and accept the latency, or move the workload to a box that has a GPU.

Disk: models are quiet space hogs

Each model is multiple gigabytes, and it's easy to accumulate a dozen "just to try." Put the model cache on its own volume with room to grow, and prune unused models — the same disk-headroom discipline every stateful service needs. Reserve 20–30% free or the next pull fails mid-download.

Thermals and power are part of capacity

Sustained inference pins a GPU or CPU at load for minutes. In a mini PC or a closet rack that means heat and power draw your other workloads now compete with. Check that the box can run the model continuously without thermal throttling — a quick burst benchmark hides the steady-state problem. A real performance benchmark rather than the spec sheet is the honest way to know what the hardware sustains.

The real decision: shared box or dedicated?

This is the planning call self-hosted AI forces:

If you're consolidating other services to make room, watch that you don't just recreate database sprawl on the remaining box.

Capacity checklist before you deploy

Plan the capacity first and self-hosted AI slots cleanly into a homelab. Skip it and the model makes the capacity decision for you — usually at the expense of everything else on the box.