Avatar for the MarshalX user
MarshalX
python-libipld
BlogDocsChangelog

Optimize CAR decoding by reducing allocations

#90Merged
Comparing
test-no-cid-alloc
(
ffd5594
) with
main
(
b0a757b
)
CodSpeed Performance Gauge
0%
Untouched
192

Benchmarks

192 total
test_dag_cbor_decode_real_data[github.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+8%
804.2 µs742.5 µs
test_dag_cbor_decode_fixtures[dagpb_11unnamedlinks+data]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-5%
36.2 µs38.2 µs
test_dag_cbor_decode_torture_cids
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-4%
36.1 ms37.5 ms
test_dag_cbor_encode[roundtrip25.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-4%
24.5 µs25.5 µs
test_decode_car
pytests/test_decode_car.py
CodSpeed Performance Gauge
+3%
487.5 ms472.9 ms
test_dag_cbor_decode[roundtrip13.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+3%
17.4 µs16.9 µs
test_dag_cbor_decode_fixtures[garbage-06]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-3%
29.7 µs30.5 µs
test_dag_cbor_decode[roundtrip03.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+3%
16.6 µs16.2 µs
test_dag_cbor_encode_real_data[twitter.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-3%
5.4 ms5.5 ms
test_dag_cbor_decode_fixtures[garbage-00]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-2%
41.1 µs42 µs
test_dag_cbor_decode[roundtrip20.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+2%
16.3 µs16.1 µs
test_dag_cbor_decode_fixtures[garbage-03]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-2%
41.9 µs42.6 µs
test_dag_cbor_encode[roundtrip10.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
22.5 µs22.8 µs
test_dag_cbor_decode_fixtures[float-0.5]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
14.2 µs14.4 µs
test_dag_cbor_encode_real_data[github.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+1%
596.3 µs588.1 µs
test_dag_cbor_decode_fixtures[dagpb_simple_forms_2]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
23.4 µs23.7 µs
test_dag_cbor_decode_fixtures[dagpb_simple_forms_3]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
23.3 µs23.6 µs
test_dag_cbor_decode_fixtures[garbage-22]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
39.6 µs40 µs
test_dag_cbor_decode[roundtrip18.json]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+1%
17 µs16.8 µs
test_dag_cbor_decode_fixtures[float-1.1]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
14.2 µs14.3 µs
test_dag_cbor_decode_fixtures[garbage-13]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
18.5 µs18.7 µs
test_dag_cbor_decode_fixtures[garbage-24]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+1%
28.7 µs28.4 µs
test_dag_cbor_decode_fixtures[cid-arrayof]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
22.7 µs22.9 µs
test_dag_cbor_decode_fixtures[garbage-10]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
+1%
29 µs28.7 µs
test_dag_cbor_decode_fixtures[garbage-01]
pytests/test_dag_cbor.py
CodSpeed Performance Gauge
-1%
22.6 µs22.8 µs

Commits

Click on a commit to change the comparison range
Base
main
b0a757b
-0.15%
Test alloc avoiding in CAR decoder for CIDs
ffd5594
8 months ago
by MarshalX
© 2026 CodSpeed Technology
Home Terms Privacy Docs