What to measure
Three numbers per (model, hardware) pair:
- Tokens / second (decode). The headline number. Streaming responsiveness depends on it.
- Time to first token (TTFT). Includes model load + prompt eval. Drops to ~0 when the model is warm.
- Memory cost. What
ollama psreports under SIZE.
Document, don't trust memory
Six months later you won't remember whether a 32B model was viable on this Mac. Write down: hardware, model, quant, num_ctx, env vars, the three numbers. A simple Markdown table is fine.
Fair benchmarks
- Run with the model already warm (one warmup prompt before timing).
- Use a fixed seed so the response length is roughly stable.
- Use a fixed prompt across runs.
- Run three times and take the median.