Skip to content

Conversation

@giaki3003
Copy link
Contributor

This PR adds misc perf improvements which have been already merged (or partially merged) into upstream. This includes

  • Prevalidate + connect + apply in single RW txn:
  • LMDB env fast flags in node init (WRITE_MAP, MAP_ASYNC, NO_SYNC, NO_META_SYNC, NO_READ_AHEAD, NO_TLS)
  • Vec + parallel sort over OutPointKey and ordered apply to coalesce writes
  • Fixed-width OutPointKey keys for LMDB (both node and wallet DBs)
  • Double-spend detection via parallel sort of fixed-width keys
  • Vector preallocations / more rayon usage
  • Switch to mimalloc v3 as a global allocator
  • Scratch-buffer hashing on hot call sites
  • Threshold based parallel merging over levels for large transaction sets on merkle tree building

@Ash-L2L Ash-L2L merged commit a283965 into LayerTwo-Labs:master-0.12.x Sep 23, 2025
6 of 7 checks passed
Ash-L2L pushed a commit that referenced this pull request Oct 14, 2025
* [perf]: backport changes from thunder perf hackathon

* [misc] Fix std dep order, add comments

* [cli] remove mimalloc from cli

* [fix] smallvec usage

* [misc] Add comments for LMDB flags

* [fix] Switch to Borsh and add small test for OutpointKey

* [fix] make in/out tracking explicit as per suggestion

* [fix] Adjust import ordering

* [fix] clarify counts() use, rm into_parts() and explicit deconstruct

* [fix] explicit From
Ash-L2L pushed a commit to giaki3003/thunder-rust that referenced this pull request Oct 14, 2025
* [perf]: backport changes from thunder perf hackathon

* [misc] Fix std dep order, add comments

* [cli] remove mimalloc from cli

* [fix] smallvec usage

* [misc] Add comments for LMDB flags

* [fix] Switch to Borsh and add small test for OutpointKey

* [fix] make in/out tracking explicit as per suggestion

* [fix] Adjust import ordering

* [fix] clarify counts() use, rm into_parts() and explicit deconstruct

* [fix] explicit From
Ash-L2L pushed a commit that referenced this pull request Oct 14, 2025
* [perf]: backport changes from thunder perf hackathon

* [misc] Fix std dep order, add comments

* [cli] remove mimalloc from cli

* [fix] smallvec usage

* [misc] Add comments for LMDB flags

* [fix] Switch to Borsh and add small test for OutpointKey

* [fix] make in/out tracking explicit as per suggestion

* [fix] Adjust import ordering

* [fix] clarify counts() use, rm into_parts() and explicit deconstruct

* [fix] explicit From
Ash-L2L pushed a commit that referenced this pull request Oct 14, 2025
* [perf]: backport changes from thunder perf hackathon

* [misc] Fix std dep order, add comments

* [cli] remove mimalloc from cli

* [fix] smallvec usage

* [misc] Add comments for LMDB flags

* [fix] Switch to Borsh and add small test for OutpointKey

* [fix] make in/out tracking explicit as per suggestion

* [fix] Adjust import ordering

* [fix] clarify counts() use, rm into_parts() and explicit deconstruct

* [fix] explicit From
Ash-L2L pushed a commit that referenced this pull request Oct 14, 2025
* [perf]: backport changes from thunder perf hackathon

* [misc] Fix std dep order, add comments

* [cli] remove mimalloc from cli

* [fix] smallvec usage

* [misc] Add comments for LMDB flags

* [fix] Switch to Borsh and add small test for OutpointKey

* [fix] make in/out tracking explicit as per suggestion

* [fix] Adjust import ordering

* [fix] clarify counts() use, rm into_parts() and explicit deconstruct

* [fix] explicit From
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.

3 participants