9cdf160bb0
smt: add sorted_pairs_to_leaves() and test for it
2024-11-14 15:33:08 -07:00
b3260c261e
merkle: add a benchmark for constructing 256-balanced trees
...
This is intended for comparison with the benchmarks from the previous
commit. This benchmark represents the theoretical perfect-efficiency
performance we could possibly (but impractically) get for computing
depth-8 sparse Merkle subtrees.
2024-11-14 15:33:08 -07:00
df37bc7fa1
smt: implement single subtree-8 hashing, w/ benchmarks & tests
...
This will be composed into depth-8-subtree-based computation of entire
sparse Merkle trees.
2024-11-14 15:33:08 -07:00
ecfc89a66c
single-subtree commit: change magic PAIR_COUNT to be COLS_PER_SUBTREE in test
2024-11-14 15:03:20 -07:00
c6034c6565
merkle: add a benchmark for constructing 256-balanced trees
...
This is intended for comparison with the benchmarks from the previous
commit. This benchmark represents the theoretical perfect-efficiency
performance we could possibly (but impractically) get for computing
depth-8 sparse Merkle subtrees.
2024-11-14 15:02:55 -07:00
543436c9d6
smt: implement single subtree-8 hashing, w/ benchmarks & tests
...
This will be composed into depth-8-subtree-based computation of entire
sparse Merkle trees.
2024-11-14 15:02:51 -07:00
d57fc21f5b
add balanced Merkle benchmark
2024-11-14 14:47:15 -07:00
7513cfe040
merkle: add a benchmark for constructing 256-balanced trees
...
This is intended for comparison with the benchmarks from the previous
commit. This benchmark represents the theoretical perfect-efficiency
performance we could possibly (but impractically) get for computing
depth-8 sparse Merkle subtrees.
2024-11-14 14:45:26 -07:00
f6e245d2ad
I forgot to include the benchmark file in the last commit
2024-11-14 14:04:28 -07:00
46857174c6
smt: implement single subtree-8 hashing, w/ benchmarks & tests
...
This will be composed into depth-8-subtree-based computation of entire
sparse Merkle trees.
2024-11-14 14:04:15 -07:00
d825a3f593
add single subtree8 commit
2024-11-14 13:54:58 -07:00
acfb432e90
smt: implement single subtree-8 hashing, w/ benchmarks & tests
...
This will be composed into depth-8-subtree-based computation of entire
sparse Merkle trees.
2024-11-14 13:53:00 -07:00
4f22d3830d
re-init as cleanup
2024-11-13 15:33:12 -07:00
46f951b0f1
smt: add sorted_pairs_to_leaves() and test for it
2024-11-13 15:32:48 -07:00
f5d3dea50d
smt: add pairs_to_leaf() to trait
2024-11-13 15:19:05 -07:00
b585f9cac6
merkle: add parent() helper function on NodeIndex
2024-11-13 15:17:40 -07:00
7e9822d7da
move 'add SubtreeLeavesIter' commit to be yet earlier
2024-11-13 15:15:43 -07:00
8eaff5c30b
add a parallel subtree criterion benchmark
2024-11-13 14:54:26 -07:00
84527a8ad6
smt: add build_subtrees()
to coordinate subtree building
2024-11-13 14:54:26 -07:00
fc68d01d2b
add a parallel construction benchmark to src/main.rs
2024-11-13 14:54:26 -07:00
8fa9ad5b48
improve docs for build_subtree()
2024-11-13 14:54:26 -07:00
76eb7f6d01
smt: add from_raw_parts() to trait interface
2024-11-13 14:54:26 -07:00
59dbc0040e
implement test_multithreaded_subtree
2024-11-13 14:54:26 -07:00
99298a6bb7
convert test_singlethreaded_subtree to use SubtreeLeavesIter
2024-11-13 14:54:26 -07:00
f2e20bc630
smt: make with_entries() a trait method
2024-11-13 14:54:26 -07:00
4fa0a51b19
SubtreeLeaf::from_smt_leaf() was only used in tests
2024-11-13 14:54:26 -07:00
fcd2647e95
cleanup test_singlethreaded_subtrees a bit
2024-11-13 14:54:26 -07:00
6bf895f027
factor out subtree-append logic
2024-11-13 14:54:26 -07:00
632595d23a
rename PrecomputedSubtrees -> PairComputations
2024-11-13 14:54:25 -07:00
028e63f60a
make PrecomputedSubtrees more generic
2024-11-13 14:54:25 -07:00
8bc1ea64d5
working test_singlethreaded_subtrees()
2024-11-13 14:54:25 -07:00
cf1bb681c4
add SubtreeLeavesIter
2024-11-13 14:54:25 -07:00
1d85ee111f
that was a hellish rebase but we seem to now have PairComputations throughout the history
2024-11-13 14:47:46 -07:00
468bd98c12
add a parallel subtree criterion benchmark
2024-11-13 14:47:06 -07:00
e6a6ad3712
smt: add build_subtrees()
to coordinate subtree building
2024-11-13 14:47:06 -07:00
96d42a4a06
add a parallel construction benchmark to src/main.rs
2024-11-13 14:47:06 -07:00
af96aef74f
improve docs for build_subtree()
2024-11-13 14:47:06 -07:00
bfd64810b4
smt: add from_raw_parts() to trait interface
2024-11-13 14:47:06 -07:00
6a0721b57d
implement test_multithreaded_subtree
2024-11-13 14:47:06 -07:00
5de20ade48
convert test_singlethreaded_subtree to use SubtreeLeavesIter
2024-11-13 14:47:05 -07:00
3274990951
smt: make with_entries() a trait method
2024-11-13 14:43:39 -07:00
a14e67bf2a
SubtreeLeaf::from_smt_leaf() was only used in tests
2024-11-13 14:43:39 -07:00
aa3197fcc1
cleanup test_singlethreaded_subtrees a bit
2024-11-13 14:43:38 -07:00
1c5fc8a830
add SubtreeLeavesIter
2024-11-13 14:41:30 -07:00
60f4dd2161
factor out subtree-append logic
2024-11-13 14:41:29 -07:00
2b04a93a15
rename PrecomputedSubtrees -> PairComputations
2024-11-13 14:37:19 -07:00
49d88600c0
make PrecomputedSubtrees more generic
2024-11-13 14:34:07 -07:00
74ab46ca69
working test_singlethreaded_subtrees()
2024-11-13 14:32:22 -07:00
47e1650a40
refactor sorted_pairs_to_leaves() to also group subtrees
2024-11-13 14:27:09 -07:00
6db08f4714
add test_two_subtrees() test
2024-11-13 14:01:00 -07:00