The packaging commit shipped the code and a summary of the numbers. It left out
everything the numbers are measured *against*, which is most of what makes them
checkable.
Added:
baselines/ llama.cpp runs (thread sweeps, NUMA sweeps, the
interleaved A/B passes behind the headline decode
figure) and the quality references: each build
against its own bf16 over 12 greedy prompts.
benchmarks/.../results/ 102 artifacts backing the published figures, each
with a provenance block naming the model,
quantization, thread set and build SHAs.
docs/engines/ the engine analyses -- llama.cpp, ExecuTorch, MNN,
ncnn, vLLM, vLLM-Omni -- and the cross-engine and
device-simulation comparisons.
docs/analysis/ the full study documents the summaries distil.
docs/edge/comparisons.md where this fork sits against llama.cpp and why:
decode is llama.cpp's, prefill is ours by ~2x, and
since neither engine exceeds 39% of the measured
222 GB/s ceiling the decode gap is the execution
model rather than the kernels.
docs/edge/environment.md pins and machine, and the correction below.
On "the modified vllm": there isn't one, and the doc says so plainly because it
is the obvious assumption. The vLLM checkout is clean upstream (0 commits
ahead, 0 uncommitted) and the installed wheel is stock 0.28.0+cpu. This fork
changes vLLM's CPU *behaviour* through vLLM's own extension points at import
time -- three CPU patches in vllm_omni/patch.py, the quantization-config
registry, the IR op registry, platform hooks -- specifically so the changes
survive a wheel upgrade rather than being lost on it. One of those patches is
why "KV sizing is not a memory lever" looked true for months: CpuPlatform
overwrote kv_cache_memory_bytes unconditionally, so the setting had no effect.
There is no patch series to apply; pin the version and let patch.py do the rest.
.gitignore gains explicit exceptions: upstream's blanket `*.json` and `results/`
rules were silently eating the measurement artifacts, which in this fork are the
substance rather than build output. Binary captures stay ignored.
No vLLM or llama.cpp source is redistributed -- only output produced with them.
NOTICE records both.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L1ax5wYLA6XbqEL1i8L9gZ
180 lines
2.6 KiB
JSON
180 lines
2.6 KiB
JSON
{
|
|
"prompt": "<\uff5cstart\u2581of\u2581sentence\uff5c><|System|>\nyou are a helpful assistant.## Tools\nYou have access to the following functions:\n<tools>\n{\"name\": \"get_weather\", \"description\": \"Get the current weather for a city.\", \"parameters\": {\"type\": \"object\", \"properties\": {\"city\": {\"type\": \"string\", \"description\": \"City name\"}, \"unit\": {\"type\": \"string\", \"enum\": [\"celsius\", \"fahrenheit\"]}}, \"required\": [\"city\"]}}\n</tools>\n\nYou are a helpful assistant with tools.<\uff5cend\u2581of\u2581sentence\uff5c><\uff5cstart\u2581of\u2581sentence\uff5c><|User|>What is the weather in Shenzhen right now, in celsius?<\uff5cend\u2581of\u2581sentence\uff5c><\uff5cstart\u2581of\u2581sentence\uff5c><|Bot|><think>",
|
|
"prompt_ids": [
|
|
0,
|
|
130972,
|
|
198,
|
|
18178,
|
|
599,
|
|
259,
|
|
18639,
|
|
31627,
|
|
27,
|
|
2257,
|
|
55260,
|
|
198,
|
|
3683,
|
|
760,
|
|
4561,
|
|
312,
|
|
275,
|
|
4305,
|
|
9928,
|
|
39,
|
|
198,
|
|
41,
|
|
37788,
|
|
43,
|
|
198,
|
|
23421,
|
|
2215,
|
|
4068,
|
|
518,
|
|
913,
|
|
76,
|
|
64301,
|
|
1078,
|
|
518,
|
|
21311,
|
|
4068,
|
|
518,
|
|
3582,
|
|
275,
|
|
3345,
|
|
14510,
|
|
396,
|
|
259,
|
|
6594,
|
|
34028,
|
|
518,
|
|
76248,
|
|
4068,
|
|
24254,
|
|
3097,
|
|
4068,
|
|
518,
|
|
9571,
|
|
1078,
|
|
518,
|
|
65263,
|
|
4068,
|
|
24254,
|
|
58593,
|
|
4068,
|
|
24254,
|
|
3097,
|
|
4068,
|
|
518,
|
|
2943,
|
|
1078,
|
|
518,
|
|
21311,
|
|
4068,
|
|
518,
|
|
42088,
|
|
2795,
|
|
33889,
|
|
518,
|
|
11220,
|
|
4068,
|
|
24254,
|
|
3097,
|
|
4068,
|
|
518,
|
|
2943,
|
|
1078,
|
|
518,
|
|
40327,
|
|
4068,
|
|
21518,
|
|
8281,
|
|
1078,
|
|
518,
|
|
83,
|
|
91538,
|
|
47265,
|
|
7872,
|
|
35951,
|
|
518,
|
|
40976,
|
|
4068,
|
|
21518,
|
|
58593,
|
|
7872,
|
|
6678,
|
|
198,
|
|
2717,
|
|
37788,
|
|
43,
|
|
198,
|
|
198,
|
|
3683,
|
|
599,
|
|
259,
|
|
18639,
|
|
31627,
|
|
478,
|
|
10397,
|
|
27,
|
|
1,
|
|
0,
|
|
130973,
|
|
4766,
|
|
390,
|
|
275,
|
|
14510,
|
|
304,
|
|
75040,
|
|
103,
|
|
872,
|
|
2430,
|
|
2343,
|
|
25,
|
|
304,
|
|
281,
|
|
108364,
|
|
44,
|
|
1,
|
|
0,
|
|
130976,
|
|
3
|
|
],
|
|
"new_ids": [
|
|
1046,
|
|
3754,
|
|
13025,
|
|
312,
|
|
1843,
|
|
275,
|
|
14510,
|
|
304,
|
|
75040,
|
|
103,
|
|
872,
|
|
2430,
|
|
2343,
|
|
304,
|
|
423,
|
|
108364,
|
|
27,
|
|
373,
|
|
760,
|
|
259,
|
|
2122,
|
|
4234,
|
|
4848,
|
|
2561,
|
|
913,
|
|
76,
|
|
64301,
|
|
77,
|
|
455,
|
|
764,
|
|
41002,
|
|
14510
|
|
],
|
|
"text": "The user wants to know the weather in Shenzhen right now in Celsius. I have a function available called `get_weather` that can retrieve weather",
|
|
"dtype": "float32",
|
|
"top1": 1046,
|
|
"scenario": "tools"
|
|
} |