Skip to content

Improve decompression speed for escape-heavy strings#172

Draft
AdamGS wants to merge 1 commit intodevelopfrom
adamg/escape-heavy-decompression
Draft

Improve decompression speed for escape-heavy strings#172
AdamGS wants to merge 1 commit intodevelopfrom
adamg/escape-heavy-decompression

Conversation

@AdamGS
Copy link
Contributor

@AdamGS AdamGS commented Mar 11, 2026

Benchmarks are in #171

@AdamGS AdamGS requested a review from a10y March 11, 2026 19:47
@codspeed-hq
Copy link

codspeed-hq bot commented Mar 11, 2026

Merging this PR will degrade performance by 50%

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

⚠️ Different runtime environments detected

Some benchmarks with significant performance changes were compared across different runtime environments,
which may affect the accuracy of the results.

Open the report in CodSpeed to investigate

⚡ 5 improved benchmarks
❌ 4 regressed benchmarks
✅ 31 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
WallTime decompress-into-reuse-all-escape 2 ms 1.4 ms +39.77%
WallTime decompress-into-reuse 16 ns 13 ns +23.08%
WallTime compress 5.4 ms 7.1 ms -24.62%
WallTime decompress 765.2 µs 897.2 µs -14.7%
WallTime compress 3.1 ms 2.7 ms +13.8%
WallTime decompress-into-reuse 12 ns 8 ns +50%
WallTime compress-twobytes 1 ns 2 ns -50%
Simulation decompress-into-reuse-all-escape 10.2 ms 6.7 ms +52.35%
Simulation decompress-into-reuse 633.3 ns 840.3 ns -24.63%

Comparing adamg/escape-heavy-decompression (cbdf004) with develop (5091107)

Open in CodSpeed

Signed-off-by: Adam Gutglick <adam@spiraldb.com>
@AdamGS AdamGS force-pushed the adamg/escape-heavy-decompression branch from 6c44d19 to cbdf004 Compare March 12, 2026 10:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant