atlas

Research map / Large language models / Reasoning and chain of thought

SpecExec: Massively Parallel Speculative Decoding For Interactive LLM Inference on Consumer Devices

NeurIPS 2024 · Large language models › Reasoning and chain of thought · approach: Speculative decoding · 5 citations (OpenAlex)

Read the paperCheck your idea against 108,967 papers

AI-extracted summary. Written by AI from the paper's full text. Numbers and claims can be wrong or missing context, so check the paper before you cite or build on it.

Proposes SpecExec, a deterministic parallel-search speculative decoding method that builds a large draft "cache" tree of most likely continuations, enabling interactive inference of 50B+ LLMs on consumer GPUs with RAM offloading.

Problem

Interactive LLM inference on consumer GPUs with parameter offloading is bandwidth-bound, and existing speculative decoding methods saturate in accepted tokens as the draft token budget grows.

Approach

Deterministically build a large draft tree of the highest cumulative-probability continuations via a parallel (batched) Dijkstra-style shortest-path search with the draft model, then verify the whole tree in one offloaded target pass; the sampling procedure stays equivalent to sequential sampling from the target model, so it works with deterministic trees, unlike standard speculative sampling.

Key results

Measured effects reported in the paper

What was changedWhereMeasuredEffect
Use SpecExec instead of SpecInferLlama 2-7B / Llama 2-70B · OpenAssistantspeed (tok/s): 1.34 -> 3.12Helped
Use SpecExec instead of SpecInferLlama 2-7B / Llama 2-70B · C4speed (tok/s): 1.03 -> 1.97Helped
Use SpecExec instead of SpecInferLlama 2-7B / Llama 2-70B · WikiText-2speed (tok/s): 0.77 -> 1.54Helped
Increase draft token budgetSpecExec compared with SpecInfer · MTBench and C4accepted tokensHelped
Use Llama 2-7B as the draft model instead of smaller draft models (ablation)SpecExec with Llama 2-70B Chat target · OpenAssistantaccepted tokensHelped
Use the unquantized 13B draft model instead of the 7B draft model (ablation)SpecExec with Llama 2-70B Chat target · OpenAssistantaccepted tokensHelped
Quantize the 7B draft model to 4 bits with GPTQ (ablation)SpecExec with Llama 2-70B Chat target · OpenAssistantaccepted tokensNo clear effect
Replace parallel SSSP tree search with standard beam search (ablation)SpecExec · OpenAssistant and WikiText-2accepted tokensHurt
Increase draft tree size beyond its speed-optimal threshold (ablation)SpecExec · MTBenchgeneration speedHurt
Apply heavier token-exclusion penalties (ablation)SpecExec with TinyLlama-1.1B draft and Llama 2-7B target · MTBenchaccepted tokens per iterationHurt
Apply lightweight token-exclusion penalties (ablation)SpecExec with TinyLlama-1.1B draft and Llama 2-7B target · MTBenchaccepted tokens per iterationNo clear effect

Surprising findings

Limitations

Experimental setup

Datasets: OpenAssistant (OASST1) MT-Bench C4 WikiText-2

Benchmarks: OpenAssistant MT-Bench C4 WikiText-2

Metrics: generation rate (accepted tokens per target iteration) tokens per second speedup

Baselines: SpecInfer Sequoia standard sequential offloaded decoding

Builds on: speculative sampling SpecInfer Dijkstra's algorithm GPTQ

Closest papers by meaning

Writing a paper in this area? scime draft is a free LaTeX editor with AI included, real-time co-authors and a check of your references and venue rules before you submit. It also imports OpenAI Prism projects.

Open scime draft

Get the next scime Dispatch and a monthly field update

Free. We send a confirmation link first; every email has a one-click unsubscribe. Privacy