oldiron#
Run local LLMs on the hardware you already have.
Tesla P100-PCIE-16GB + Qwen3 8B Q4_K_M
16 GiB 4.68 GiB weights
-> fits, ~15 tok/s ceiling
A second-hand Tesla P40 costs less than a game. The problem is never the card — it is the hour you lose to a build that segfaults, a driver that no longer sees the GPU, a wheel compiled for AVX2 on a CPU that does not have it, and a 15 GB download that turns out not to fit anyway.
oldiron is one command that looks at your machine and tells you what will work before
you spend that hour.
Quick start#
pip install oldiron # zero dependencies
pip install "oldiron[rich]" # same, plus colour, panels and a memory bar
# What is this machine, and how should llama.cpp be built for it?
oldiron doctor
# Does this model fit, and how do I launch it?
oldiron fit ~/models/Qwen3-8B-Q4_K_M.gguf -c 16384
# Same question, before downloading 5 GB
oldiron fit hf:unsloth/Qwen3-8B-GGUF:Q4_K_M
What it does#
Knows about old cards. Kepler, Maxwell, Pascal, Volta: which CUDA toolkit still supports them, which driver branch is the last one, which build flags to use, and which FP16 paths to avoid.
Budgets memory honestly. Weights and KV cache are computed from the file’s own metadata, per layer, including hybrid models where only some layers hold a cache.
Says whether it will be usable, not merely loadable. Decode speed is bounded by memory bandwidth, and that ceiling is printed next to the memory budget.
Answers before the download. Point it at a Hugging Face repo and it reads the GGUF header over HTTP range requests.
Speaks CUDA and Metal. On Apple Silicon it budgets against the Metal allocation cap rather than total RAM, and recommends performance-core counts.
Zero dependencies, on purpose#
The machines this tool exists for are the ones where installing things goes wrong. The
core has no dependencies at all, and rich is an optional extra: without it the output
degrades to plain text rather than failing.