Avatar for the BobTheBuidler user
BobTheBuidler
faster-hexbytes
BlogDocsChangelog

perf: optimize HexBytes slice fast-path

#70Merged
Comparing
codex/hexbytes-slice-fastpath
(
40fbb38
) with
master
(
f70c90b
)
CodSpeed Performance Gauge
+11%
Improvement
1
Untouched
618

Benchmarks

619 total
test_faster_hexbytes_getitem_slice[slice(None,None)-b'a'*1024]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+11%
344.3 µs310.5 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-ascii sentence]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
296.8 µs276.8 µs
test_faster_hexbytes_getitem_slice[slice(2,None)-b'a'*1024]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
336.5 µs314 µs
test_faster_hexbytes_getitem_slice[slice(1,6)-b'\\x01'*100]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
301.2 µs281.1 µs
test_faster_hexbytes_getitem_slice[slice(2,None)-b'\\x00\\xff\\x00\\xff']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
296.3 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(1,6)-b'\\x01'*2048]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
300.3 µs280.4 µs
test_faster_hexbytes_getitem_slice[slice(1,6)-b'abc']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
300.6 µs280.6 µs
test_faster_hexbytes_getitem_slice[slice(1,6)-b'\\xde\\xad\\xbe\\xef']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
300.5 µs280.7 µs
test_faster_hexbytes_getitem_slice[slice(None,None)-4-byte pattern]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
292.8 µs273.5 µs
test_faster_hexbytes_getitem_slice[slice(0,3)-b'\\x00\\xff\\x00\\xff']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
300.2 µs280.5 µs
test_faster_hexbytes_getitem_slice[slice(None,None)-all byte values]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
292.8 µs273.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-repeated 0-9]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-4-byte pattern]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-0-9]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-b'abc']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
296.2 µs276.9 µs
test_faster_hexbytes_getitem_slice[slice(2,None)-b'\\xde\\xad\\xbe\\xef']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-b'\\x01'*2048]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-long alternating]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-single 0xff]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
283.4 µs265 µs
test_faster_hexbytes_getitem_slice[slice(2,None)-palindrome]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.4 µs276.2 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-b'\\x10\\x20\\x30\\x40\\x50']
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-multiples of 0x10]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.8 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-palindrome ascii]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.9 µs276.6 µs
test_faster_hexbytes_getitem_slice[slice(2,None)-palindrome ascii]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.7 µs276.5 µs
test_faster_hexbytes_getitem_slice[slice(-3,None)-mixed pattern]
benchmarks/test_main_benchmarks.py
CodSpeed Performance Gauge
+7%
295.8 µs276.6 µs

Commits

Click on a commit to change the comparison range
Base
master
f70c90b
+10.87%
Merge branch 'master' into codex/hexbytes-slice-fastpath
40fbb38
3 months ago
by BobTheBuidler
© 2026 CodSpeed Technology
Home Terms Privacy Docs