Benchmarks for moe-cache: stock llama.cpp vs the moe-cache plugin on your machine, model and prompts, with a token-identity check
Python
1
1 commits
updated Oct 14, 2026
Benchmarks for moe-cache: stock llama.cpp against llama.cpp with the moe-cache plugin, on your machine,
with your model and prompts, under a memory limit you choose, with a check that both produce the same tokens.
Split out of the moe-cache repository on 2026-10-14 (from moe-cache commit b59288f).
systemd-run for the memory limits.llama-server built with shared ggml libraries, and a built moe-cache next to this folder:git clone https://github.com/IbrahimSiddiqui007/moe-cache && (cd moe-cache && ./build.sh)
git clone https://github.com/IbrahimSiddiqui007/moe-cache-benchmark
The tool finds moe-cache (plugin build and planner) in this order: MOE_CACHE_DIR, a moe-cache folder next to this one, ~/moe-cache-setup/moe-cache
(where moe-cache's install.sh puts it), ~/moe-cache.
| Path | What it is |
|---|---|
bin/moe-cache-bench | web page for runs: speed, identity, your own prompts, deep metrics (http://127.0.0.1:8765) |
bin/moe-cache-bench-watch | terminal view of a running benchmark |
bench/standard.py | the standard protocol STP-1 (docs/TEST_PROTOCOL.md) |
bench/run_matrix.py | many models x placements x memory limits, publishable table |
bench/quality.py | quality harness: compare, longctx, soak, judge-calibrate, codegen |
bench/coding_session.py | coding-session benchmark (prompt reuse on a large context) |
tools/wait_cool.sh | the clean-run gate as one command |
| docs/BENCHMARKS.md | what is measured and how to run capability suites |
The tool (bin/moe-cache-bench) needs only the Python standard library. It measures stock llama.cpp and moe-cache on your machine,
with your model and your prompts, under a memory limit you choose, and checks that both produce the same tokens.
bin/moe-cache-bench # starts the tool and opens http://127.0.0.1:8765
.gguf (the llama-server and plugin paths are filled in when found).---; add EXPECT: word lines to mark words the answer must contain. They are run on both modes and compared.bin/moe-cache-bench-watch.Command line, for a fixed comparable protocol (two placements, two limits, both orders; see docs/TEST_PROTOCOL.md):
bin/moe-cache-bench --no-browser &
bench/standard.py MODEL.gguf --limits 12,24 --profiles cpu,gpu
The shareable HTML report and JSON export contain no prompts, outputs or local paths; the unfiltered versions are for you only (see docs/SECURITY.md). Benchmark every model on your disk (all Ollama models and all GGUF files in a folder, both placements, several memory limits) and get a table to publish:
bench/run_matrix.py --ollama --dir ~/models # prints the plan: models, cells, limits
bench/run_matrix.py --ollama --dir ~/models --run # runs it; writes results-matrix-DATE.md and .csv
What the benchmarks mean and how to run the usual capability suites against the same server: docs/BENCHMARKS.md.
Feature-frozen: bugs are fixed, new features are not planned. Only clean runs are quoted (the tool flags runs that started hot or under load).
MIT, see LICENSE.
Benchmarks for moe-cache: stock llama.cpp vs the moe-cache plugin on your machine, model and prompts, with a token-identity check
Python
1
1 commits
updated Oct 14, 2026
Benchmarks for moe-cache: stock llama.cpp against llama.cpp with the moe-cache plugin, on your machine,
with your model and prompts, under a memory limit you choose, with a check that both produce the same tokens.
Split out of the moe-cache repository on 2026-10-14 (from moe-cache commit b59288f).
systemd-run for the memory limits.llama-server built with shared ggml libraries, and a built moe-cache next to this folder:git clone https://github.com/IbrahimSiddiqui007/moe-cache && (cd moe-cache && ./build.sh)
git clone https://github.com/IbrahimSiddiqui007/moe-cache-benchmark
The tool finds moe-cache (plugin build and planner) in this order: MOE_CACHE_DIR, a moe-cache folder next to this one, ~/moe-cache-setup/moe-cache
(where moe-cache's install.sh puts it), ~/moe-cache.
| Path | What it is |
|---|---|
bin/moe-cache-bench | web page for runs: speed, identity, your own prompts, deep metrics (http://127.0.0.1:8765) |
bin/moe-cache-bench-watch | terminal view of a running benchmark |
bench/standard.py | the standard protocol STP-1 (docs/TEST_PROTOCOL.md) |
bench/run_matrix.py | many models x placements x memory limits, publishable table |
bench/quality.py | quality harness: compare, longctx, soak, judge-calibrate, codegen |
bench/coding_session.py | coding-session benchmark (prompt reuse on a large context) |
tools/wait_cool.sh | the clean-run gate as one command |
| docs/BENCHMARKS.md | what is measured and how to run capability suites |
The tool (bin/moe-cache-bench) needs only the Python standard library. It measures stock llama.cpp and moe-cache on your machine,
with your model and your prompts, under a memory limit you choose, and checks that both produce the same tokens.
bin/moe-cache-bench # starts the tool and opens http://127.0.0.1:8765
.gguf (the llama-server and plugin paths are filled in when found).---; add EXPECT: word lines to mark words the answer must contain. They are run on both modes and compared.bin/moe-cache-bench-watch.Command line, for a fixed comparable protocol (two placements, two limits, both orders; see docs/TEST_PROTOCOL.md):
bin/moe-cache-bench --no-browser &
bench/standard.py MODEL.gguf --limits 12,24 --profiles cpu,gpu
The shareable HTML report and JSON export contain no prompts, outputs or local paths; the unfiltered versions are for you only (see docs/SECURITY.md). Benchmark every model on your disk (all Ollama models and all GGUF files in a folder, both placements, several memory limits) and get a table to publish:
bench/run_matrix.py --ollama --dir ~/models # prints the plan: models, cells, limits
bench/run_matrix.py --ollama --dir ~/models --run # runs it; writes results-matrix-DATE.md and .csv
What the benchmarks mean and how to run the usual capability suites against the same server: docs/BENCHMARKS.md.
Feature-frozen: bugs are fixed, new features are not planned. Only clean runs are quoted (the tool flags runs that started hot or under load).
MIT, see LICENSE.