Zebra/zebra-state/src
teor f81e997090
2. fix(perf): Run CPU-intensive state reads in parallel rayon threads (#4805)
* Split disk reads from CPU-heavy Sprout interstitial tree cryptography

* Improve anchor validation debugging and error messages

* Work around a test data bug, and save some CPU

* Remove redundant checks for empty shielded data

* Skip generating unused interstitial treestates

* Do disk fetches and quick checks, then CPU-heavy cryptography

* Wrap HistoryTree in an Arc in the state

* Run CPU-intensive chain validation and updates in parallel rayon threads

* Refactor to prepare for parallel tree root calculations

* Run finalized state note commitment tree root updates in parallel rayon threads

* Update finalized state note commitment trees using parallel rayon threads

* Fix a comment typo and add a TODO

* Split sprout treestate fetch into its own function

* Move parallel note commitment trees to zebra-chain

* Re-calculate the tree roots in the same parallel batches

* Do non-finalized note commitment tree updates in parallel threads

* Update comments about note commitment tree rebuilds

* Do post-fork tree updates in parallel threads

* Add a TODO for parallel tree updates in tests

* Fix broken intra-doc links

* Clarify documentation for sprout treestates

* Spawn large database reads into blocking tokio threads

* Concurrently read all blocks, headers, and transactions from disk

* Run zebra-state transaction deserialization on a rayon thread
2022-07-22 16:25:32 +00:00
..
service 2. fix(perf): Run CPU-intensive state reads in parallel rayon threads (#4805) 2022-07-22 16:25:32 +00:00
tests feat(state): add transparent address indexes to the non-finalized state (#4022) 2022-04-12 17:21:46 +00:00
arbitrary.rs fix(doc): Fix various doc warnings, part 2 (#4561) 2022-06-14 01:22:16 +00:00
config.rs feat(state): delete old database directories (#4586) 2022-06-21 00:59:51 +00:00
constants.rs fix(state): Update column family names to match Zebra's database design (#4639) 2022-06-30 23:00:23 +00:00
error.rs 1. fix(perf): Run CPU-intensive state updates in parallel rayon threads (#4802) 2022-07-22 12:19:11 -04:00
lib.rs feat(state): delete old database directories (#4586) 2022-06-21 00:59:51 +00:00
request.rs fix(doc): Fix various doc warnings, part 1 (#4514) 2022-06-02 15:07:35 +00:00
response.rs fix(doc): Fix various doc warnings, part 2 (#4561) 2022-06-14 01:22:16 +00:00
service.rs 2. fix(perf): Run CPU-intensive state reads in parallel rayon threads (#4805) 2022-07-22 16:25:32 +00:00
tests.rs Only fetch block headers from the database to answer headers requests (#4792) 2022-07-22 09:15:22 +10:00
util.rs feat(log): log the state tip height as part of sync progress logs (#3437) 2022-01-28 19:12:19 -03:00