The Latest AIs, every day
AIs with the most favorites on Toolify
AIs with the highest website traffic (monthly visits)
AI Tools by Apps
Discover the Discord of AI
AI Tools by browser extensions
GPTs from GPT Store
Discover The Best Model For AI
Top AI lists by month and monthly visits.
Top AI lists by category and monthly visits.
Top AI lists by region and monthly visits.
Top AI lists by source and monthly visits.
Top AI lists by revenue and real traffic.

Measurement-driven speculative decoding for NVIDIA DGX Spark (GB10).
Pulse is not an inference engine and does not replace llama.cpp. It is two things:
The negative results in
bench/RESULTS.md
are the more useful
half. Several widely-assumed optimisations measurably do nothing here.
Same model, same harness (
bench/conc.py
), 128 tokens/request, temperature 0,
idle GB10 (0 other compute apps).
| concurrent clients | stock defaults | pulse | speedup |
|---|---|---|---|
| 1 | 26.58 tok/s | 40.71 tok/s | 1.53x |
| 4 | 72.93 tok/s | 79.61 tok/s | 1.09x |
| 16 | 73.08 tok/s | 117.71 tok/s | 1.61x |
Stock is
llama-server -m <model> -ngl 99 -c 65536
(defaults to 4 slots, no
drafter, no flash attention). It saturates at 73 tok/s because 16 clients queue
on 4 slots.
That is the whole honest claim: ~1.5-1.6x from configuration . It is not 10x, and nothing here will make a bandwidth-bound machine go 10x.
At batch 1 this is a memory-bandwidth problem and nothing else:
PQ2_0
is
6.70 GB
. Measured sustained bandwidth is
184.6 GB/s
. One weight sweep is therefore
36.3 ms
.
Batching amortises the sweep across sequences, so it scales:
| batch | decode tok/s | prefill tok/s |
|---|---|---|
| 1 | 27.54 | 994.80 |
| 2 | 46.53 | 980.48 |
| 4 | 78.92 | 976.54 |
| 8 | 106.09 | 945.06 |
| 16 | 133.08 | 881.44 |
The drafter buys extra tokens per weight sweep while the sweep is under-occupied. Once batching has filled it, the drafter's extra rows are pure cost.
| clients | with drafter | no drafter |
|---|---|---|
| 1 | 40.71 | 26.46 |
| 4 | 79.61 | 72.24 |
| 8 | 98.17 | 94.80 |
| 16 | 111.99 | 117.71 |
Crossover is between 8 and 16 clients.
pulse serve
picks the side of that
curve for you. Honest caveat: versus a static always-on drafter the gain is only
~5%, at 16 clients only.
| drafter | size | block | best K | tok/s | acceptance | tok/step |
|---|---|---|---|---|---|---|
| v1 | 603 MB | 4 | 4 | 64.1 | 72.28% | 3.86 |
| v2 | 1.10 GB | 7 | 7 | 66.3 median | 69.10% | 5.74 |
v2 at K=7 is the default: 66.3 tok/s median (62.4–69.2 over 6 repeats after a 90 s quiesce) on a realistic code context, against a 27.54 tok/s no-drafter baseline — 2.4x .
An earlier revision of this README reported 73.3 tok/s with a 1.09 spread for this exact config. That was measured in an unusually favourable machine state. See Measurement hygiene — this machine has a 10.2% noise floor .
Stacking a free n-gram drafter ahead of the neural one helps v1 (+1.8%) and hurts v2 (−11%): the free drafts displace deeper dspark drafts, 5.74 → 4.62 tok/step. With the recommended drafter, don't stack.
K is capped by the drafter's block size.
With v1,
--spec-draft-n-max 5
and
7
are byte-identical to
4
. Requesting more is a no-op, and earlier rounds of
this repo reported "K=7" numbers that were really K=4.
| lever | result |
|---|---|
GGML_CUDA_GRAPHS=ON
|
61.84 vs 62.40 tok/s —
no effect
. Disabled at runtime: Gated DeltaNet nodes fail
ggml_cuda_graph_check_compability
|
| batched LM-head kernel |
no gain available
.
mul_mat_vec_q
already amortises the weight read across
ncols_dst
; +10% kernel time for 2.5x the columns
|
smaller
PTQ1_0
target
|
22% slower (51.73 vs 65.96) despite being smaller |
KV cache
q8_0
|
65.53 vs 66.59 f16 — slightly worse |
| n-gram stacking | counters byte-identical to the drafter alone; never engaged |
-ub
above 512
|
prefill 389 vs 656 tok/s — worse |
Two traps that produced false results here, both now guarded by
pulse doctor
:
pulse bench
refuses to run on a busy GPU.
pulse doctor # is the GPU clean enough to measure on?
pulse serve --slots 16 # llama.cpp with the measured-optimal config
pulse bench --levels 1,4,16 # reproduce the concurrency table
pulse profile # print the tuning profile with provenance
The drafter's forward pass runs at ~39 GB/s — 21% of the 184.6 GB/s this machine sustains. Measured by differencing each drafter's step time against the design curve at matched tokens/step:
| drafter | size | overhead | effective bandwidth |
|---|---|---|---|
| v1 | 603 MB | +15.4 ms/step | 39.2 GB/s |
| v2 | 1.10 GB | +27.9 ms/step | 39.4 GB/s |
Overhead scales 1.81x for a 1.75x drafter, so it's the forward pass itself. The cause is visible in the profile: a 5-layer block-diffusion model executed as ~24 separate MMQ launches per step, each moving ~25 MB — far too little to saturate the bus. It's latency-bound, not bandwidth-bound.
At achievable bandwidth, v2 would be
50.33 + 1.10/184.6 = 56.3 ms/step
→
102 tok/s single-stream
. That closes the entire gap to the target, and it is a
runtime optimization on drafter execution: we already own a block-7 drafter, so no
retrain is required. CUDA Graphs won't fix it — the drafter has Gated DeltaNet
layers, which is exactly why graphs get rejected at runtime.
This repo previously published 141-206 tok/s single-stream, 495 tok/s across 16
subagents, and 525 tok/s for an MoE model that was never loaded. Those numbers
were not measured. They came from a benchmark harness with hardcoded latency
constants and from tables typed by hand. They have been removed from the code,
the README, the model card and the blog post, and the corrections are recorded
commit by commit.
bench/RESULTS.md
documents what replaced them and why.
Apache-2.0.
Ternary-Bonsai-2-27B-Pulse huggingface.co is an AI model on huggingface.co that provides Ternary-Bonsai-2-27B-Pulse's model effect (), which can be used instantly with this asimfiles Ternary-Bonsai-2-27B-Pulse model. huggingface.co supports a free trial of the Ternary-Bonsai-2-27B-Pulse model, and also provides paid use of the Ternary-Bonsai-2-27B-Pulse. Support call Ternary-Bonsai-2-27B-Pulse model through api, including Node.js, Python, http.
Ternary-Bonsai-2-27B-Pulse huggingface.co is an online trial and call api platform, which integrates Ternary-Bonsai-2-27B-Pulse's modeling effects, including api services, and provides a free online trial of Ternary-Bonsai-2-27B-Pulse, you can try Ternary-Bonsai-2-27B-Pulse online for free by clicking the link below.
Ternary-Bonsai-2-27B-Pulse is an open source model from GitHub that offers a free installation service, and any user can find Ternary-Bonsai-2-27B-Pulse on GitHub to install. At the same time, huggingface.co provides the effect of Ternary-Bonsai-2-27B-Pulse install, users can directly use Ternary-Bonsai-2-27B-Pulse installed effect in huggingface.co for debugging and trial. It also supports api for free installation.
