Everything K-culture — comebacks to K-beauty, straight to your inboxGet it in your inbox

METAL MEDIA

DiffusionGemma Technical Report

arXiv:2608.001462026-07-30

Google's DiffusionGemma is an experimental open-weight model that refines 256-token blocks in parallel to generate text far faster than conventional token-by-token AR models

Instead of generating one token at a time like standard autoregressive (AR) models, DiffusionGemma iteratively refines blocks of 256 tokens at once using discrete diffusion. It was created not by training from scratch but by fine-tuning Gemma 4, a mixture-of-experts (MoE) model with 3.8B activated and 25.2B total parameters, using less than 10% of the original AR model's training token budget. Averaged across its evaluation suite, it produces about 20 tokens per forward pass and roughly 1,500 output tokens per second on a single H100 GPU, substantially faster than AR models even with state-of-the-art speculative decoding.

METAL MEDIA explanatory visual

How DiffusionGemma's two-stage pipeline produces fast text

Evidence statusMeasured results reported

  1. Starting point: Gemma 4 AR modelInitialized from the pretrained Gemma 4 26B A4B MoE checkpoint (3.8B activated, 25.2B total parameters) rather than training from scratch
  2. Stage 1: SFTSupervised fine-tuning teaches bidirectional denoising over 256-token canvases, using under 10% of the AR model's original training token budget
  3. Stage 2: SD·RLSampler distillation combined with reinforcement learning jointly boosts reward-driven quality and compresses the number of denoising steps needed
  4. Inference: block-wise diffusion decodingStarting from a random noise canvas, an entropy-bounded sampler with adaptive stopping finishes a 256-token block in about 12 steps on average, then appends it to the KV cache
  5. Result: new speed-quality Pareto frontierAbout 1,500 tokens per second and 20 tokens per forward pass on a single H100, beating AR models even with state-of-the-art speculative decoding
An explanatory diagram made by METAL MEDIA, not a figure supplied by the paper's authors.

What they did

  1. Conventional AR models generate one token at a time, which leaves GPU compute underutilized at low request volumes because time is dominated by moving weights and KV cache from memory (a memory bandwidth bottleneck).
  2. DiffusionGemma sidesteps this with discrete diffusion: it starts from a 256-token canvas of random noise and iteratively refines the whole block in parallel using bidirectional attention.
  3. Training has two stages: supervised fine-tuning (SFT) first teaches the model bidirectional denoising, then a second stage called SD·RL combines sampler distillation with reinforcement learning to jointly improve quality and cut the number of denoising steps needed.
  4. An entropy-bounded sampler with adaptive stopping lets the model halt denoising early once its predictions are confident and stable, cutting latency by up to roughly 4x without sacrificing quality.
  5. Because it shares the exact same transformer architecture as Gemma 4, the fine-tuned weights can still be run in standard autoregressive mode, leaving room for hybrid diffusion-AR decoding depending on the situation.
Figure 1: Pareto plot of quality versus output decoding speed comparing DiffusionGemma to the Gemma 4 model family and other diffusion models. Quality and output speed are calculated as the average across GPQA-Diamond and LiveCodeBench-v6 for all models. Gemma 4 and DiffusionGemma output speeds are measured on a single H100 (FP8, batch size 1).2 Nemotron 14B is measured on a single H100 (bfloat16, batch size 1). LLaDA 2.1 Flash 100B is measured on 8× NVIDIA B200 GPUs (bfloat16, batch size 1).3 Mercury 2 was measured via the public OpenRouter API with high reasoning effort (see Appendix E for speed estimation). The light blue dots and dashed line represent the Gemma 4 family of models without MTP.
Figure 1: Pareto plot of quality versus output decoding speed comparing DiffusionGemma to the Gemma 4 model family and other diffusion models. Quality and output speed are calculated as the average across GPQA-Diamond and LiveCodeBench-v6 for all models. Gemma 4 and DiffusionGemma output speeds are measured on a single H100 (FP8, batch size 1).2 Nemotron 14B is measured on a single H100 (bfloat16, batch size 1). LLaDA 2.1 Flash 100B is measured on 8× NVIDIA B200 GPUs (bfloat16, batch size 1).3 Mercury 2 was measured via the public OpenRouter API with high reasoning effort (see Appendix E for speed estimation). The light blue dots and dashed line represent the Gemma 4 family of models without MTP.
Figure 2: Overview of our two-stage training pipeline that converts an autoregressive model (Gemma 4 26B A4B) into a text diffusion model (DiffusionGemma). Initialized from the AR model weights, the model first undergoes SFT that adapts it to discrete text diffusion and bidirectional attention across 256-token canvases. This is followed by an online sampler distillation and reinforcement learning phase, which jointly maximizes reward-driven generation quality and compresses the denoising steps to unlock ultra-low latency.
Figure 2: Overview of our two-stage training pipeline that converts an autoregressive model (Gemma 4 26B A4B) into a text diffusion model (DiffusionGemma). Initialized from the AR model weights, the model first undergoes SFT that adapts it to discrete text diffusion and bidirectional attention across 256-token canvases. This is followed by an online sampler distillation and reinforcement learning phase, which jointly maximizes reward-driven generation quality and compresses the denoising steps to unlock ultra-low latency.
Table 1: Parameter counts. DiffusionGemma’s architecture is a mixture-of-experts transformer with a vocabulary of 262k tokens. The total number of activated parameters does not include the vision encoder. It includes an additional MLP block for the purpose of self-conditioning.
Total25.2B
Activated3.85B
Vision Encoder550M
Embedder740M
Self-Conditioning7.8M
Active / Total Experts8 / 128
+ 1 shared
Figure 3: Stylized example of discrete diffusion probability paths and parallel sampling trajectory. For illustrative purposes, the state space uses distinct, token-specific vocabularies: adjectives on the horizontal axis and nouns on the vertical axis. As time moves backward from t=1.0 (noise) to t=0.0 (data), the marginal distribution smoothly interpolates, concentrating mass away from the uniform noise distribution and onto valid data modes. Black circles track the discrete jump transitions of an individual sequence realization (from “blue moon” at t=1.0 to “red sunset” at t=0.0), demonstrating how parallel canvas dimensions coordinate non-autoregressively over time.
Figure 3: Stylized example of discrete diffusion probability paths and parallel sampling trajectory. For illustrative purposes, the state space uses distinct, token-specific vocabularies: adjectives on the horizontal axis and nouns on the vertical axis. As time moves backward from t=1.0 (noise) to t=0.0 (data), the marginal distribution smoothly interpolates, concentrating mass away from the uniform noise distribution and onto valid data modes. Black circles track the discrete jump transitions of an individual sequence realization (from “blue moon” at t=1.0 to “red sunset” at t=0.0), demonstrating how parallel canvas dimensions coordinate non-autoregressively over time.
Figure 4: The DiffusionGemma generation pipeline. The process consists of three main stages: 1) Context encoding: The input prompt is processed by the causal encoder to initialize the Key-Value (KV) cache. 2) Denoising loop: A noisy canvas is iteratively refined by the decoder, using bidirectional attention across the canvas and cross-attention to the KV cache, until the text is fully denoised. 3) Encode & append: The finalized clean canvas is passed back through the causal encoder and appended to the KV cache, setting the context for the next block of tokens.
Figure 4: The DiffusionGemma generation pipeline. The process consists of three main stages: 1) Context encoding: The input prompt is processed by the causal encoder to initialize the Key-Value (KV) cache. 2) Denoising loop: A noisy canvas is iteratively refined by the decoder, using bidirectional attention across the canvas and cross-attention to the KV cache, until the text is fully denoised. 3) Encode & append: The finalized clean canvas is passed back through the causal encoder and appended to the KV cache, setting the context for the next block of tokens.
Table 3: Comparison of model performance, TPS and TPF across various benchmarks. TPS excludes prefill time; “−” denotes missing data. For speed measurements: DiffusionGemma and Gemma 4 are measured on 1× H100 (FP8, batch size 1); Nemotron 14B on 1× H100 (bfloat16, batch size 1); LLaDA 2.1 Flash 100B on 8× B200 (bfloat16, batch size 1); Mercury 2 via its public API (see Appendix E for speed estimation). TPS, TPF and total tokens are averaged over the 7 benchmarks for which we have full coverage: AIME 2026, GPQA Diamond, LiveCodeBench-v6, MGSM, HumanEval, LBPP, and Natural2Code. TPS and TPF for Gemma 4 (MTP) are measured using SPEED-Bench (1). The Natural2Code and HiddenMath rows are highlighted as they are proprietary, unleaked evals.
Open-weight ModelsClosed-weight Model
DiffusionGemmaGemma 4LLaDA 2.1 FlashNemotron DiffusionMercury 2
26B A4B26B A4B100B14BUnknown
ModeTDTD (No-think)ARAR (No-think)AR (MTP)AR (MTP, No-think)TD (S Mode)TD (Diffusion Mode)HighMedium
AIME 202669.150.884.257.588.380.080.040.091.782.5
GPQA Diamond73.264.679.867.282.373.768.747.075.266.7
LiveCodeBench-V669.160.671.458.377.172.639.428.679.474.9
Codeforces ELO14299591569105917181529718-19861629
BigBench EH47.640.059.142.264.856.2--48.943.8
GSM8K96.395.896.696.196.796.445.0-96.595.8
MGSM84.880.787.984.392.991.56.869.391.991.2
MMMLU81.576.382.278.086.378.0--81.980.6
MMMU Pro54.366.063.366.773.872.5----
Putnam67.457.174.759.781.072.9-45.873.673.6
HumanEval94.592.798.297.698.897.690.286.098.298.2
BigCodeBench46.041.947.745.950.248.1-33.547.645.3
LBPP81.068.986.374.189.577.345.740.789.285.0
IFEval97.494.597.295.798.797.8-72.197.094.5
Tau2 Retail71.557.575.461.085.579.0----
Tau2 Airline69.049.072.050.076.051.0----
Tau2 Telecom28.132.033.832.043.034.2----
MMLU-Pro77.677.978.879.182.682.6--77.675.5
Natural2Code94.090.196.292.396.394.786.973.379.171.3
HiddenMath80.674.385.477.587.281.6-44.382.782.3
Output Speed (TPS)1479151220420430330337549600547
Tokens Per Forward (TPF)19.7418.761.001.001.401.404.631.79--
Average Total Tokens4,0018295,1841,0257,2071,8164,3719413,8821,222
Figure 5: Adaptive stopping enables DiffusionGemma to dynamically adjust its number of denoising steps to task complexity and domain. We report median, first and third quartiles of the effective denoising steps (Equation 9). See Table 4 for full benchmarks and latency metrics.
Figure 5: Adaptive stopping enables DiffusionGemma to dynamically adjust its number of denoising steps to task complexity and domain. We report median, first and third quartiles of the effective denoising steps (Equation 9). See Table 4 for full benchmarks and latency metrics.
Figure 6: Evolution of downstream performance during SFT. Prior to SFT, the model is incapable of denoising text. Only a moderate amount of SFT is needed to achieve good performance in non-thinking mode, however extended SFT is crucial for the model to learn thinking behaviour. Results use entropy-bounded sampling with adaptive stopping and a maximum of N=192 denoising steps.
Figure 6: Evolution of downstream performance during SFT. Prior to SFT, the model is incapable of denoising text. Only a moderate amount of SFT is needed to achieve good performance in non-thinking mode, however extended SFT is crucial for the model to learn thinking behaviour. Results use entropy-bounded sampling with adaptive stopping and a maximum of N=192 denoising steps.
Table 4: Performance and latency metrics of DiffusionGemma TD in Thinking vs. No-Thinking mode. We report accuracy/score, Tokens Per Forward (TPF, higher is faster), Tokens Per Second (TPS), Effective Denoising Steps (DNS, lower is faster), Total Forwards, Total Tokens, and End-to-End Latency per sample in seconds (excluding prefill time). The latency metrics are averaged across all samples within each benchmark.
Score (↑)TPF (↑)TPS (↑)Effective DNS (↓)Total Forwards (↓)Total TokensE2E Time (s) (↓)
BenchmarkThinkNo-ThinkThinkNo-ThinkThinkNo-ThinkThinkNo-ThinkThinkNo-ThinkThinkNo-ThinkThinkNo-Think
AIME 202669.150.819.316.71365.41333.012.614.1390.691.16,4451,3094.720.98
GPQA Diamond73.264.616.716.51207.81330.215.113.4443.448.15,6477264.680.55
LiveCodeBench-V669.160.618.516.91278.31333.413.814.0581.8195.77,5341,8475.891.39
Codeforces ELO142995915.114.0950.51040.317.118.5959.6521.111,6224,27912.234.11
BigBench EH47.640.020.817.71390.21415.111.912.8434.968.19,0621,2336.520.87
GSM8K96.395.823.224.11866.21966.49.17.543.413.28832980.470.15
MGSM84.880.719.016.81526.71367.511.511.963.619.51,0852910.710.21
MMMU Pro54.366.017.715.41351.31255.113.815.3191.631.63,1784722.350.38
Putnam67.457.118.116.01330.81282.413.414.4303.877.44,7251,1033.550.86
HumanEval94.592.723.024.31838.21981.29.48.055.614.31,1743050.640.15
BigCodeBench46.041.919.619.41560.11579.011.310.177.321.81,4103940.900.25
LBPP81.068.920.519.21509.81545.411.610.9264.379.44,7308593.130.56
IFEval97.494.517.29.01368.3732.113.014.4100.824.01,4642391.070.33
Natural2Code94.090.121.121.01682.71706.510.59.670.524.71,3914650.830.27
HiddenMath80.674.321.019.41591.21564.711.311.5206.449.73,5018442.200.54
Figure 7: Downstream performance during SFT improves log-linearly with training progress. The log-linear trend for thinking performance starts off at a lower point yet exhibits a steeper slope than non-thinking mode. Results use the EntropyBounded sampler with adaptive stopping and a maximum of N=192 denoising steps.
Figure 7: Downstream performance during SFT improves log-linearly with training progress. The log-linear trend for thinking performance starts off at a lower point yet exhibits a steeper slope than non-thinking mode. Results use the EntropyBounded sampler with adaptive stopping and a maximum of N=192 denoising steps.
Figure 8: SD⋅RL training simultaneously increases average reward and reduces the effective denoising steps of the online teacher (training metrics shown in buckets of 200 steps). Both effects together push the quality-speed Pareto frontier of the model.
Figure 8: SD⋅RL training simultaneously increases average reward and reduces the effective denoising steps of the online teacher (training metrics shown in buckets of 200 steps). Both effects together push the quality-speed Pareto frontier of the model.
Table 6: PubMedQA performance of the finetuned model with LoRA rank 4. Finetuning leads to a slight increase in accuracy on a model with a good base performance.
ModelEffective Denoising StepsAccuracy (%)BLEU
DiffusionGemma18.0975.610.76
+ LoRA finetuning31.5776.6220.67
Figure 9: SD⋅RL significantly advances the quality-speed Pareto frontier. The SD⋅RL configuration uses the DiffusionGemma sampler with a maximum of N=48 denoising steps. The SFT frontier is derived by sweeping N from 48 to 192 (note that higher N yields milder temperature annealing). Both quality (y-axis) and inference efficiency (x-axes, see Section 3.4) are calculated as the average between GPQA-Diamond and LiveCodeBench-v6 in thinking mode, averaged over 3 seeds.
Figure 9: SD⋅RL significantly advances the quality-speed Pareto frontier. The SD⋅RL configuration uses the DiffusionGemma sampler with a maximum of N=48 denoising steps. The SFT frontier is derived by sweeping N from 48 to 192 (note that higher N yields milder temperature annealing). Both quality (y-axis) and inference efficiency (x-axes, see Section 3.4) are calculated as the average between GPQA-Diamond and LiveCodeBench-v6 in thinking mode, averaged over 3 seeds.
Figure 10: Performance vs. number of denoising steps N, without adaptive stopping or temperature annealing. Performance is measured as the average score over GPQA-Diamond, LiveCodeBench-v6 (3 seeds). To remove confounding effects of early stopping and temperature annealing, we disabled adaptive stopping and use temperature τt=1.
Figure 10: Performance vs. number of denoising steps N, without adaptive stopping or temperature annealing. Performance is measured as the average score over GPQA-Diamond, LiveCodeBench-v6 (3 seeds). To remove confounding effects of early stopping and temperature annealing, we disabled adaptive stopping and use temperature τt=1.
Table 7: Summary of downstream finetuning hyperparameters for the Sudoku and PubMedQA recipes. Both LoRA recipes use adapters applied to all linear layers and train for 2,000 steps. A full-weight alternative is also provided for Sudoku, using Adafactor to manage memory on 8 GPUs.
HyperparameterSudoku (LoRA)Sudoku (Full)PubMedQA
LoRA rank84
Canvas size256256128
Number of canvases112
Prompt length2562561024
Batch size282
Peak learning rate3×10−41.125×10−41.0×10−4
End learning rate3×10−51.125×10−51.0×10−5
Training steps8,0002,0002,000
OptimizerAdamAdafactorAdam
LR scheduleCosine with warmupCosine with warmupCosine with warmup
Warmup iterations400100100
Weight decay10−410−410−4
Min. hardware2× A100 80GB8× A100 80GB2× A100 80GB
Figure 11: Per-step GPU time breakdown: DiffusionGemma processes 256 tokens per step with only a 3.2× increase in per-step latency compared to single-token AR generation. Serving a single request (batch size 1) on a H100, FP8 precision, with 4096 input tokens, 1024 output tokens.
Figure 11: Per-step GPU time breakdown: DiffusionGemma processes 256 tokens per step with only a 3.2× increase in per-step latency compared to single-token AR generation. Serving a single request (batch size 1) on a H100, FP8 precision, with 4096 input tokens, 1024 output tokens.
Figure 12: Trade-off between total and per-user throughput of the Gemma 4 AR model (with and without MTP) and DiffusionGemma. In the low batch size regime, DiffusionGemma offers substantially higher TPS per user and higher total throughput. It is only at moderate batch sizes (around 32 concurrent requests) that AR models begin to have a throughput advantage. All models are run on an H100 with FP8 precision using the PG-19 benchmark (4096 input tokens, 1024 output tokens); the Gemma 4 AR (MTP) model uses a draft length of 4.
Figure 12: Trade-off between total and per-user throughput of the Gemma 4 AR model (with and without MTP) and DiffusionGemma. In the low batch size regime, DiffusionGemma offers substantially higher TPS per user and higher total throughput. It is only at moderate batch sizes (around 32 concurrent requests) that AR models begin to have a throughput advantage. All models are run on an H100 with FP8 precision using the PG-19 benchmark (4096 input tokens, 1024 output tokens); the Gemma 4 AR (MTP) model uses a draft length of 4.

Findings

  • Averaged across the full evaluation suite, DiffusionGemma generates about 20 tokens per forward pass and achieves roughly 1,500 output tokens per second (TPS) on a single NVIDIA H100 GPU.
  • This is substantially faster than AR models using state-of-the-art speculative decoding, which typically achieve only about 3-6 tokens per forward pass.
  • With adaptive stopping, the model averages about 12 effective denoising steps out of a maximum budget of 48, yielding roughly a 4x reduction in latency without sacrificing generation quality.
  • Although it processes 256 tokens per step, per-step latency only increases 3.2x compared to single-token AR generation (measured on H100, FP8, batch size 1).
  • The fine-tuned weights can still be run for standard AR generation with only minor performance degradation.

Where it can be used

  • Serving latency-critical chatbots or coding assistants where per-user response speed matters
  • Inference setups with low concurrency (small batch sizes) where GPU compute would otherwise be underutilized
  • Lightweight domain-specific fine-tuning (e.g., medical QA, speech recognition) enabled by the permissive Apache 2.0 license
  • Hybrid serving that dynamically routes requests between diffusion and AR decoding depending on latency constraints and task complexity

Limits and open work

  • At moderate batch sizes (around 32 concurrent requests), AR models regain a throughput advantage over DiffusionGemma.
  • Diffusion fine-tuning introduces some performance degradation compared to the original AR baseline.
  • Speed figures for closed-source competitors like Mercury 2 are estimated indirectly via the OpenRouter API rather than measured directly, introducing potential error.
  • Large portions of the paper's middle sections and some appendices (e.g., Appendix F, G.3) were omitted from the provided material, so not all detailed results could be reviewed.
  • Because discrete diffusion updates each position without seeing simultaneous choices at other positions, it can occasionally produce local grammatical inconsistencies.

Why it matters

For latency-sensitive services like chatbots or coding assistants, this suggests a single GPU could deliver dramatically faster text generation than current AR serving setups. The open-weight release under Apache 2.0 also means researchers and developers can inspect the mechanics of discrete diffusion directly and adapt the model to their own domains with relatively low compute.

Terms in this paper

  • discrete diffusion · A generative approach that adds and removes noise directly among actual vocabulary tokens, unlike continuous-space diffusion used for images
  • autoregressive (AR) model · The standard language model approach that generates tokens one by one, left to right
  • mixture-of-experts (MoE) · A model architecture that activates only a subset of specialized sub-networks per input to reduce compute
  • adaptive stopping · A technique that ends the denoising process early once the model's predictions become confident and stable, instead of always running the maximum number of steps
  • sampler distillation · A training technique that teaches the model to reproduce high-quality but slow generation outcomes using fewer denoising steps

Original abstract (English)

We introduce DiffusionGemma, an experimental open-weight language model that uses discrete diffusion to generate text at exceptionally high speed. Rather than decoding one token at a time, DiffusionGemma iteratively refines blocks of 256 tokens in parallel, avoiding the sequential decoding bottleneck of conventional autoregressive (AR) large language models. Instead of training from scratch, we obtain DiffusionGemma by fine-tuning the mixture-of-experts Gemma 4 model with 3.8B activated and 25.2B total parameters. Our compute-efficient two-stage training pipeline uses fewer than 10% of the starting AR model's total training token budget. The first stage uses supervised fine-tuning to teach bidirectional denoising, while the second stage combines reinforcement learning with sampler distillation to jointly improve generation quality and inference efficiency. DiffusionGemma establishes a new Pareto frontier for the trade-off between generation speed and model capability. Averaged across our full evaluation suite, it generates around 20 tokens per forward pass and achieves roughly 1,500 output tokens per second on a single NVIDIA H100 GPU, which is substantially faster than AR models even with state-of-the-art speculative decoding. DiffusionGemma also retains the starting model's support for thinking mode, multimodal inputs, and long contexts. Despite diffusion fine-tuning, it remains capable of AR generation with only minor performance degradation, suggesting a path toward hybrid diffusion-AR decoding.

Authors · DiffusionGemma Team

Read on arXiv

Latest papers

All papers →

Latest from METAL MEDIA

Figures: DiffusionGemma Team et al., arXiv:2608.00146, CC BY 4.0