Papers
Topics
Authors
Recent
Search
2000 character limit reached

Multi-Block Decoding with Rejection Recycling

Updated 17 December 2025
  • The paper introduces a multi-block decoding method that leverages rejection recycling to significantly increase tokens accepted per iteration compared to traditional autoregressive and vanilla Jacobi approaches.
  • The method maintains key-value cache efficiency and uses parallel decoding under causal attention, making it compatible with modern GPU hardware and exploiting hardware-level parallelism.
  • Empirical evaluations report up to a 4× improvement in token acceptance and near 4× end-to-end speedup, demonstrating practical gains in efficiency and latency reduction.

Multi-block decoding with rejection recycling is an advanced methodology for accelerating inference in transformer-based LLMs, particularly those trained via Jacobi Forcing. This approach extends the Jacobi fixed-point paradigm by leveraging several blocks of parallel decoding with token-level recycling of rejected suffixes, thus significantly increasing the number of tokens accepted per iteration and reducing wall-clock latency relative to standard autoregressive (AR) or vanilla Jacobi schemes. The method is compatible with causal attention, preserves key-value (KV) cache efficiency, and is specifically tuned to exploit hardware-level parallelism in modern GPUs (Hu et al., 16 Dec 2025).

1. Formal Definition and Mechanism

Let LL be the total number of tokens to generate given a prompt. Choose a block size nn and a maximum number of in-flight blocks KK. At any iteration:

  • Maintain a set B={b1,...,bK}B = \{b_1, ..., b_K\} where each block bb stores:
    • qb∈Vnq_b \in V^n: current draft (proposed tokens),
    • ab∈V≤na_b \in V^{\leq n}: accepted prefix,
    • RA ∈[1,K]\in [1, K]: the index of the real-active block; all others are pseudo-active.
  • In each step:

    1. All KK blocks are packed into a batch under causal attention.
    2. A single forward pass produces logits for each position in every block.
    3. For each block, the draft is "verified" using greedy decoding; the longest prefix matching the true AR trajectory is accepted.
    4. For the real-active (RA) block, this accepted prefix is committed to the global KV-cache.
    5. Rejected suffixes of RA are recycled into a candidate pool NN for subsequent proposals.
    6. Pseudo-active blocks that reach a progress (spawn) threshold can trigger the creation of new pseudo-active blocks.
    7. Blocks may be promoted to RA when RA's accepted prefix is full (nn0).
  • Termination occurs when the RA block accepts an <eos> token or all blocks reach full acceptance.

This approach allows multi-block parallelism under strict causal constraints, reusing rejected token sequences to maximize acceptance per iteration (Hu et al., 16 Dec 2025).

2. Pseudocode for Rejection Recycling

A condensed form of the algorithm is as follows:

qb∈Vnq_b \in V^n0 This pseudocode demonstrates the integration of parallel decode, suffix recycling, candidate pool management, and block spawning/promotion (Hu et al., 16 Dec 2025).

3. Key Formulas and Theoretical Analysis

At the heart of multi-block decoding with rejection recycling are several operational and theoretical formulas:

  • Jacobi fixed-point update per block nn1, iteration nn2:

nn3

for nn4.

  • Greedy Verification:

nn5

nn6

where nn7 is the AR-greedy continuation.

  • Accepted-token count per iteration:

nn8

  • Expected tokens-per-forward (TPF):

nn9

KK0

  • End-to-end wall-clock speedup:

KK1

where KK2 is the sequence length and KK3 is the number of iterations used by the method.

For typical settings (e.g., KK4–KK5, KK6), empirical acceptance probability KK7–KK8, and factor-4–5 token acceptance improvement is observed compared to vanilla Jacobi, until limited by GPU parallelism constraints (Hu et al., 16 Dec 2025).

4. Compute–Latency Trade-offs and Hardware Considerations

Multi-block decoding with rejection recycling intentionally trades additional FLOPs (due to verifying and managing multiple concurrent and recycled proposals) to achieve lower token-level latency. Each pass processes KK9 proposal tokens plus up to B={b1,...,bK}B = \{b_1, ..., b_K\}0 candidates from the rejection pool. This extra computation is efficient and justifiable when the GPU has excess FLOPs budget up to its "roofline knee"—about 256 parallel tokens processed on H200/B200 GPUs and 128 on A100.

As B={b1,...,bK}B = \{b_1, ..., b_K\}1 increases, the per-iteration accepted token count B={b1,...,bK}B = \{b_1, ..., b_K\}2 improves super-linearly up to hardware limits, after which marginal speedup is diminished by roofline constraints. For typical Jacobi Forcing models under standard hyperparameters, this approach achieves a practical tokens-per-forward (TPF) increase from 1.00 (AR) to 4.09 (multi-block with recycling), with measured end-to-end speedups close to 4.0× (Hu et al., 16 Dec 2025).

5. Empirical Performance and Comparisons

Evaluations on HumanEval and math benchmarks validate the effectiveness of multi-block decoding with rejection recycling:

Setting AR Jacobi (vanilla) CLLM Multi-block + Recycling (JFMR)
TPF (HumanEval) 1.0 1.03 2.7 4.09
Speedup (A100/B200) 1.0 1.03 2.5 3.95–3.97
pass@1 (HumanEval) 87.8 not stated – 83.5
Math solve rate (GSM8K) – – – >91%
Speedup (math, Qwen2.5) – – – 3.7–3.8

In all tested scenarios, multi-block decoding with rejection recycling exceeds the throughput of both vanilla Jacobi and state-of-the-art diffusion LLMs (≤2.5× TPF, ≤1.8× speedup), while retaining a high fraction of the AR baseline's accuracy (Hu et al., 16 Dec 2025).

6. Hyperparameter Tuning

The efficiency of the method depends critically on several hyperparameters:

  • B={b1,...,bK}B = \{b_1, ..., b_K\}3: Block size; optimal near the hardware throughput knee (64 for H200/B200, 128 for A100).
  • B={b1,...,bK}B = \{b_1, ..., b_K\}4: Number of in-flight blocks; B={b1,...,bK}B = \{b_1, ..., b_K\}5 is generally optimal, higher B={b1,...,bK}B = \{b_1, ..., b_K\}6 yields diminishing returns.
  • B={b1,...,bK}B = \{b_1, ..., b_K\}7: Spawn threshold as a ratio of B={b1,...,bK}B = \{b_1, ..., b_K\}8; best results for B={b1,...,bK}B = \{b_1, ..., b_K\}9.
  • bb0: Maximum candidate verification size; bb1 balances quality and compute.
  • bb2: Candidate pool size; bb3 recommended for GPU capacity.

Careful selection and dynamic adaptation of these parameters maximize throughput while avoiding inefficiencies or hardware over-saturation (Hu et al., 16 Dec 2025).

7. Implementation Guidelines and Practical Considerations

Effective deployment of multi-block decoding with rejection recycling requires:

  • Batching all bb4 blocks with a noise-aware causal mask in each pass (avoid bidirectional attention).
  • Ensuring KV-cache reuse by keeping the causal mask unchanged for RA blocks.
  • Maintaining a FIFO structure for the rejected suffix pool; batch-verify candidates efficiently.
  • Spawning new pseudo-active blocks only when the RA block surpasses its progress threshold, minimizing block fragmentation.
  • Promoting blocks to RA only upon full acceptance in the prior RA slot.
  • Tuning (bb5, bb6, bb7, bb8) in accordance with hardware roofline studies; saturate but do not exceed FLOPs capacity.
  • Utilizing mixed-precision and fused kernel implementations to reduce verification and overhead.
  • Instituting fallback to greedy AR decoding in case maximum iteration limits (bb9) are reached to avoid potential infinite loops.

This suite of guidelines ensures both compatibility with the pretrained causal inference properties and practical speed and throughput benefits (Hu et al., 16 Dec 2025).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Multi-Block Decoding with Rejection Recycling.