Avatar for the DaniPopes user
DaniPopes
const-hex
BlogDocsChangelog

perf: add NEON SIMD decode for aarch64

#43Merged
Comparing
dani/aarch64-simd-optimizations
(
c406e86
) with
master
(
22291dc
)
CodSpeed Performance Gauge
0%
Untouched
36

Benchmarks

36 total
bench3_2k
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
5.6 µs5.6 µs
bench1_32b
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
401.7 ns401.7 ns
bench6_1m
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
1.6 ms1.6 ms
bench4_16k
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
27.4 µs27.4 µs
bench5_128k
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
207.6 µs207.6 µs
bench2_256b
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
2.4 µs2.4 µs
bench6_1m
benches/bench/main.rs::encode::const_hex
CodSpeed Performance Gauge
0%
1.6 ms1.6 ms
bench5_128k
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
204.8 µs204.8 µs
bench2_256b
benches/bench/main.rs::format::const_hex
CodSpeed Performance Gauge
0%
2.3 µs2.3 µs
bench1_32b
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
551.4 ns551.4 ns
bench1_32b
benches/bench/main.rs::format::const_hex
CodSpeed Performance Gauge
0%
1.4 µs1.4 µs
bench4_16k
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
26 µs26 µ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
bench5_128k
benches/bench/main.rs::format::const_hex
CodSpeed Performance Gauge
0%
700.9 µs700.9 µs
bench3_2k
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
3.7 µs3.7 µs
bench2_256b
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
660.3 ns660.3 ns
bench4_16k
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
19.3 µs19.3 µs
bench6_1m
benches/bench/main.rs::check::const_hex
CodSpeed Performance Gauge
0%
1.2 ms1.2 ms
bench2_256b
benches/bench/main.rs::encode_to_slice::const_hex
CodSpeed Performance Gauge
0%
915 ns915 ns
bench6_1m
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
0%
1.7 ms1.7 ms
bench2_256b
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
0%
2.4 µs2.4 µs
bench6_1m
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
0%
1.7 ms1.7 ms
bench3_2k
benches/bench/main.rs::decode::const_hex
CodSpeed Performance Gauge
0%
6.3 µs6.3 µs
bench2_256b
benches/bench/main.rs::decode_to_slice::const_hex
CodSpeed Performance Gauge
0%
1 µs1 µs

Commits

Click on a commit to change the comparison range
Base
master
22291dc
-0.01%
Revert "perf: use signed overflow trick for aarch64 check"
1d67a21
2 months ago
by DaniPopes
0%
refactor: move to_nibbles to closure in decode_checked_neon
32a14d0
2 months ago
by DaniPopes
0%
refactor: extract to_nibbles closure in x86 decode_checked_avx2
b244868
2 months ago
by DaniPopes
0%
refactor: inline to_nibbles in aarch64 decode_checked_neon
c406e86
2 months ago
by DaniPopes
© 2026 CodSpeed Technology
Home Terms Privacy Docs