Official implementation of DDTree (Diffusion Draft Tree) from Accelerating Speculative Decoding with Block Diffusion Draft Trees.
Liran Ringel, Yaniv Romano
π Project Page Β |Β π Paper
This codebase is intended for a CUDA-enabled PyTorch environment.
pip install -r requirements.txt
bash run_benchmark.sh
This produces benchmark outputs in runs/ and logs in logs/.
To run one model on one dataset on one GPU:
CUDA_VISIBLE_DEVICES=0 \
NPROC_PER_NODE=1 \
TASKS_OVERRIDE="gsm8k:128" \
MODEL_DRAFT_PAIRS_OVERRIDE="Qwen/Qwen3-4B|z-lab/Qwen3-4B-DFlash-b16" \
TEMPERATURES_OVERRIDE="0.0" \
MODES_OVERRIDE="sdpa" \
DISABLE_CPP_COMPACT_CACHE=1 \
bash run_benchmark.sh
Useful overrides:
MAX_SAMPLES_OVERRIDE (for quick smoke tests)MAX_NEW_TOKENS (default 2048)TREE_BUDGET_OVERRIDE (for DDTree budget list)MODES_OVERRIDE="sdpa" to avoid running both modesGenerate the plots:
python3 plot_results.py
Generate the LaTeX table:
python3 make_latex_table.py
@article{ringel2026ddtree,
title={Accelerating Speculative Decoding with Block Diffusion Draft Trees},
author={Ringel, Liran and Romano, Yaniv},
journal={arXiv preprint arXiv:2604.12989},
year={2026}
}
4 commits
Python
75.8%
Shell
24.2%
Official implementation of DDTree (Diffusion Draft Tree) from Accelerating Speculative Decoding with Block Diffusion Draft Trees.
Liran Ringel, Yaniv Romano
π Project Page Β |Β π Paper
This codebase is intended for a CUDA-enabled PyTorch environment.
pip install -r requirements.txt
bash run_benchmark.sh
This produces benchmark outputs in runs/ and logs in logs/.
To run one model on one dataset on one GPU:
CUDA_VISIBLE_DEVICES=0 \
NPROC_PER_NODE=1 \
TASKS_OVERRIDE="gsm8k:128" \
MODEL_DRAFT_PAIRS_OVERRIDE="Qwen/Qwen3-4B|z-lab/Qwen3-4B-DFlash-b16" \
TEMPERATURES_OVERRIDE="0.0" \
MODES_OVERRIDE="sdpa" \
DISABLE_CPP_COMPACT_CACHE=1 \
bash run_benchmark.sh
Useful overrides:
MAX_SAMPLES_OVERRIDE (for quick smoke tests)MAX_NEW_TOKENS (default 2048)TREE_BUDGET_OVERRIDE (for DDTree budget list)MODES_OVERRIDE="sdpa" to avoid running both modesGenerate the plots:
python3 plot_results.py
Generate the LaTeX table:
python3 make_latex_table.py
@article{ringel2026ddtree,
title={Accelerating Speculative Decoding with Block Diffusion Draft Trees},
author={Ringel, Liran and Romano, Yaniv},
journal={arXiv preprint arXiv:2604.12989},
year={2026}
}
4 commits
Python
75.8%
Shell
24.2%