v3.3.0
What's Changed
❗ Almost x2 speed for CAR decoding (Bluesky firehose), ~25-35% faster DAG-CBOR decoding, and ~17% faster CID decoding!
I do have more ideas on what to try to speed it up even further! For example, applying BOLT on top of the existing PGO.
⚡ Optimizations
- Huge performance gain for DAG-CBOR decoding and CID by replacing deprecated Rust crate
libipldwithcbor4iiby @vmx in #80 and even contributed upstream! - Optimize DAG-CBOR encoding for arrays and maps by @MarshalX in #88
- Optimize CAR decoding by reducing allocations by @MarshalX in #90
- Optimize executable size (
panic = "abort") by @MarshalX in #86
Other
- Add
pytest-benchmarkGitHub Actions workflow by @MarshalX in #82 - Add lint and format check GHA workflow by @MarshalX in #83
- Add CONTRIBUTING.md by @MarshalX in #85
- Update CodSpeed by @MarshalX in #81
- Fix formatting in profiling by @MarshalX in #84
🏎️ Performance comparison. Before (v3.2.0) VS After (v3.3.0):
You can find more benchmark results here: #92
New Contributors
Full Changelog: v3.2.0...v3.3.0