Repository navigation
·
24 commits
to 66f531d01ac1d9950c32c19abfb0a6f533a0663f
since this release
FlashSpec v0.1.5 — Honest CPU path, optional ASM, small server
Development status stays Alpha. This release does not claim a production deployment or an H100 speedup.
Package
- PyPI: https://pypi.org/project/flashspec/0.1.5/
- Files:
flashspec-0.1.5-py3-none-any.whlandflashspec-0.1.5.tar.gz - The
asmextra installsflashspec-asm-kernel>= 0.1.2 on Linux x86-64. Other platforms keep the pure-PyTorch residual. - The
serveextra is one worker, with no streaming.
Documentation and engine notes
- The README quickstart loads TinyLlama/TinyLlama-1.1B-Chat-v1.0 with Felladrin/Llama-160M-Chat-v1. Both report vocabulary 32000. A Llama-3 model reports vocabulary 128256 and must not be paired with that drafter.
- Each loop forwards only the largest equal-length group. The KV cache rolls only for a group of one row. The
-1fill on shorter rows is not an attention mask. docs/kernels.mdlabels the H100 figures as roofline analysis, not a profile.- Expected tokens per target forward are
(1 - alpha^(gamma+1)) / (1 - alpha), about 3.05 at alpha 0.75 and gamma 4. That figure is not a measured speedup. - The H100 comparison table is removed from the paper. Those figures are unmeasured design targets. Medusa and EAGLE are not implemented.
Measured pairs cited by this release
CPU float32 TinyLlama-1.1B-Chat with Felladrin/Llama-160M-Chat-v1, HumanEval/23, 16 new tokens, git f59b5b4: FlashSpec 1.75 tok/s, vanilla autoregressive decoding 4.30 tok/s, acceptance 0.114, speedup 0.407.
Colab Tesla T4 float16, git cb02ca1, eight synthetic prompts: FlashSpec 17.6 tok/s, vanilla autoregressive decoding 29.0 tok/s, speedup 0.606.
Full precision is in benchmarks/results/. The historical NF4 row, 44.2 tok/s, acceptance 0.75, and p50 22.1 ms, stays logged from notebooks/Colab_Benchmarks_T4.ipynb cell 25. The changelog and benchmarks/results/PROVENANCE.md have the file list.