Avatar for the DaniPopes user
DaniPopes
const-hex
BlogDocsChangelog

perf: single-pass AVX2 decode with validation

#41Merged
Comparing
dani/single-pass-decode
(
6361ac5
) with
master
(
eab3daf
)
CodSpeed Performance Gauge
-12%
Improvement
13
Regression
2
Untouched
21

Benchmarks

36 total
bench1_32b
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+42%
968.1 ns683.1 ns
bench1_32b
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+31%
1.5 µs1.1 µs
bench2_256b
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+29%
1.4 µs1.1 µs
bench3_2k
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+19%
4.8 µs4 µs
bench4_16k
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+19%
32.9 µs27.7 µs
bench5_128k
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+18%
257.5 µs217.4 µs
bench6_1m
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
+18%
2.1 ms1.7 ms
bench6_1m
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+18%
2.1 ms1.7 ms
bench5_128k
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+18%
260.1 µs220 µs
bench4_16k
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+18%
35 µs29.7 µs
bench2_256b
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+16%
2.8 µs2.4 µs
bench1_32b
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
+15%
460 ns401.7 ns
bench3_2k
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
+13%
7.1 µs6.3 µs
bench2_256b
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
-12%
856.7 ns973.3 ns
bench1_32b
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
-11%
493.1 ns551.4 ns
bench1_32b
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
+6%
1.1 µs1 µs
bench2_256b
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
+4%
689.4 ns660.3 ns
bench4_16k
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
27.4 µs27.3 µs
bench5_128k
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
151.7 µs151.7 µs
bench4_16k
benches/bench/main.rs::format::const_hex
CodSpeed Performance Gauge
0%
88.9 µs88.9 µs
bench6_1m
benches/bench/main.rs::format::const_hex
CodSpeed Performance Gauge
0%
3.9 ms3.9 ms
bench6_1m
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
bench5_128k
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
207.6 µs207.6 µs
bench6_1m
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
1.6 ms1.6 ms
bench4_16k
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
19.3 µs19.3 µs

Commits

Click on a commit to change the comparison range
Base
master
eab3daf
+41.61%
perf: single-pass AVX2 decode with validation
dfe81c0
2 months ago
by DaniPopes
-0.34%
perf: add 32-byte AVX2 cascade for decode remainder
11e9c35
2 months ago
by DaniPopes
0%
fmt
293808a
2 months ago
by DaniPopes
-53.25%
refactor: use generic chunked iteration helpers for decode_checked
6361ac5
2 months ago
by DaniPopes
© 2026 CodSpeed Technology
Home Terms Privacy Docs