Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add own implementation of CAR reader #28

Merged
merged 9 commits into from
Mar 11, 2024
Merged

Add own implementation of CAR reader #28

merged 9 commits into from
Mar 11, 2024

Conversation

MarshalX
Copy link
Owner

@MarshalX MarshalX commented Mar 7, 2024

  • add proper error handling
  • add notice about supporting only DAG-CBOR as blocks
  • add tests
  • investigate performance improvements

Copy link

codspeed-hq bot commented Mar 7, 2024

CodSpeed Performance Report

Merging #28 will improve performances by 34.7%

Comparing add-car-reader (f0d1449) with main (d8ea506)

Summary

⚡ 3 improvements
✅ 189 untouched benchmarks

Benchmarks breakdown

Benchmark main add-car-reader Change
test_dag_cbor_decode[roundtrip05.json] 35.6 µs 27.9 µs +27.78%
test_dag_cbor_decode[roundtrip08.json] 34.3 µs 25.5 µs +34.7%
test_decode_car 6.1 s 5.5 s +10.84%

@MarshalX
Copy link
Owner Author

MarshalX commented Mar 7, 2024

a little bit faster. i expected that because we don't use executor anymore. idk is it possible to do something more (except remove multibasing of CIDs in keys)

image

@MarshalX
Copy link
Owner Author

MarshalX commented Mar 11, 2024

own impl gains perf boost after upgrading to pyo3 v0.21 (bound api) + pgo

image

@MarshalX MarshalX merged commit a7af30f into main Mar 11, 2024
3 checks passed
@MarshalX MarshalX deleted the add-car-reader branch March 11, 2024 13:39
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