Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Decompression of quality 2 streams

Decoder overview · Benchmark index

Recorded run: dec-2026-10-30-amd (2026-10-30). CSV · Environment · Methodology and limits.

Quality belongs to the C encoder that prepared the input; decoders have no quality setting. All four decode the same bytes. Burli is included at every source quality; SIMD Brotli re-exports Rust brotli’s decoder and is omitted.

Median speed across 8 datasets

Median of per-dataset C mean time / decoder mean time ratios, with equal weight. Higher is faster; 1× matches C. No confidence interval is inferred for this across-dataset median.

DecoderMedian speed / C
Google C1.000×
mbrotli3.325×
Rust brotli0.570×
Burli3.362×

mbrotli median speed / Burli: 1.056× (direct per-dataset ratios).

Datasets are ranked by mbrotli speed relative to the fastest peer, highest first. Throughput counts restored bytes; empty input has latency only. Whiskers and intervals describe sampling uncertainty, not all host variation. Cold APIs include allocation and disposal. C knows the output capacity; Rust brotli includes its 4 KiB I/O adapter.

tiny-text

44-byte quick-brown-fox sentence.

48 compressed → 44 restored bytes; compressed / original: 109.091%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C0.18460.1842–0.1851227.341.000×
mbrotli0.022520.02169–0.023371,863.598.197×
Rust brotli1.8451.842–1.84922.740.100×
Burli0.035130.03499–0.035291,194.485.254×

text-1m

Alice text repeated cyclically to 1 MiB.

57,403 compressed → 1,048,576 restored bytes; compressed / original: 5.474%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C659.7659–660.41,515.891.000×
mbrotli276.1275.9–276.43,621.522.389×
Rust brotli877.3876.6–877.91,139.920.752×
Burli308.2307.8–308.73,244.402.140×

repeated-1m

1 MiB of repeated a bytes.

23 compressed → 1,048,576 restored bytes; compressed / original: 0.002%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C1,2271,226–1,227815.311.000×
mbrotli10.5210.52–10.5395,016.53116.541×
Rust brotli1,2581,257–1,259794.770.975×
Burli11.5511.54–11.5686,549.46106.156×

random-64k

64 KiB prefix of the deterministic pseudorandom corpus.

65,540 compressed → 65,536 restored bytes; compressed / original: 100.006%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C2.2012.2–2.20228,391.281.000×
mbrotli0.840.8393–0.840774,404.662.621×
Rust brotli35.8435.81–35.861,744.070.061×
Burli0.8520.8492–0.857473,355.282.584×

random-1m

1 MiB of deterministic xorshift64 pseudorandom bytes.

1,048,581 compressed → 1,048,576 restored bytes; compressed / original: 100.000%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C39.8839.83–39.9225,077.781.000×
mbrotli15.8615.83–15.8863,067.512.515×
Rust brotli83.8283.69–83.9711,930.950.476×
Burli15.8615.84–15.8863,057.552.514×

binary-64k

64 KiB of structured binary bytes: ((i / 16) XOR i) modulo 256.

2,673 compressed → 65,536 restored bytes; compressed / original: 4.079%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C34.7334.7–34.771,799.571.000×
mbrotli8.6218.617–8.6257,250.004.029×
Rust brotli46.5246.47–46.571,343.560.747×
Burli8.3888.382–8.3957,450.754.140×

alice29

Vendored Alice in Wonderland text.

57,383 compressed → 152,089 restored bytes; compressed / original: 37.730%.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C245.9245.4–246.4589.901.000×
mbrotli254.7254.4–255569.480.965×
Rust brotli370.1369.8–370.4391.940.664×
Burli286.6285.9–287.8506.070.858×

empty

Empty input; measures API overhead.

1 compressed → 0 restored bytes; compressed / original: undefined.

DecoderMean µs95% mean interval µsDecoded MiB/sSpeed / C
Google C0.11330.113–0.1135—1.000×
mbrotli0.020250.01957–0.02095—5.593×
Rust brotli1.7281.726–1.729—0.066×
Burli0.015510.01545–0.0156—7.302×