Back to directory

local-llm-bench

A scenario-based benchmark for local LLM inference on Apple Silicon that measures effective end-to-end throughput, including the prefill phase, across real workloads such as agent conversations and document classification.

local-llm-bench

local-llm-bench runs realistic multi-turn scenarios, such as an eight-turn agent conversation, document classification and creative writing, against a running local inference backend and reports effective throughput, defined as output tokens divided by the total wall-clock time including prefill, rather than only the peak generation speed a chat UI usually shows. Since prefill time grows with conversation history, a model advertised at a high tokens-per-second rate can deliver much lower effective throughput once real context is accounted for.

It compares engines such as MLX and llama.cpp and multiple serving backends, including LM Studio, on the same hardware and workloads, and lets a user add custom single-shot or conversational scenarios to test their own use case. It requires only Python 3.8 or later with no dependencies and a model already loaded in a supported backend, and results are saved automatically as JSON files.

More in Inference

See all 770
  • OpenDecision

    deepanwadhwa.github.io

    An open-source Python package that answers typed questions about application state or documents using a local natural-language-inference model, returning structured choice, score, yes/no or evidence-relation values instead of free text.

  • Lifeboat

    iterate.ai

    A local inference server that puts an OpenAI- and Anthropic-compatible API in front of open-weight language models running on hardware you control, from a laptop to a GPU cluster.

  • Claude S40

    github.com

    An unofficial Claude chat client for 2007-era Nokia Series 40 phones, built as a Java ME app plus a small Go relay server, with web search, reading mode and saved chats.