vacp2p / zerokit

A set of Zero Knowledge modules, written in Rust and designed to be used in other system programming environments.
Apache License 2.0
130 stars 7 forks source link

Fix json serialization and update corresponding test #253

Closed seemenkina closed 3 months ago

seemenkina commented 3 months ago

Issue #252 and part of #237

github-actions[bot] commented 3 months ago

Benchmark for 57634a5

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | FullMerkleTree::compute_root | 0.0±0.00ns | 0.0±0.00ns | NaN% | | FullMerkleTree::delete | 852.4±22.61ns | 844.9±9.51ns | -0.88% | | FullMerkleTree::get | 0.0±0.00ns | 0.0±0.00ns | NaN% | | FullMerkleTree::get_empty_leaves_indices | 7.1±0.11ns | 7.1±0.07ns | 0.00% | | FullMerkleTree::get_subtree_root | 0.6±0.01ns | 0.6±0.02ns | 0.00% | | FullMerkleTree::override_range | 1310.8±41.60ns | 1308.1±19.24ns | -0.21% | | FullMerkleTree::set | 857.1±9.43ns | **843.0±7.77ns** | **-1.65%** | | OptimalMerkleTree::compute_root | 998.5±22.79ns | 1001.9±6.18ns | +0.34% | | OptimalMerkleTree::delete | 1006.8±17.11ns | 1001.3±12.85ns | -0.55% | | OptimalMerkleTree::get | **23.6±0.18ns** | 23.8±0.30ns | **+0.85%** | | OptimalMerkleTree::get_empty_leaves_indices | 7.4±0.13ns | 7.5±0.61ns | +1.35% | | OptimalMerkleTree::get_subtree_root | 24.3±0.39ns | 24.6±0.45ns | +1.23% | | OptimalMerkleTree::override_range | 4.2±0.04µs | **4.1±0.10µs** | **-2.38%** | | OptimalMerkleTree::set | 1002.7±7.83ns | 1004.1±33.05ns | +0.14% |
github-actions[bot] commented 3 months ago

Benchmark for 57634a5

Click to view benchmark | Test | Base | PR | % | |------|--------------|------------------|---| | FullMerkleTree::::full_height_gen | **13.6±0.13ms** | 14.4±0.10ms | **+5.88%** | | OptimalMerkleTree::::full_height_gen | **564.5±10.90µs** | 574.4±5.04µs | **+1.75%** | | Pmtree::compute_root | 0.0±0.00ns | 0.0±0.00ns | NaN% | | Pmtree::get | 338.7±4.70ns | **331.0±3.67ns** | **-2.27%** | | Pmtree::get_empty_leaves_indices | 8.4±0.14ns | 8.4±0.09ns | 0.00% | | Pmtree::get_subtree_root | 466.1±5.30ns | 470.3±5.27ns | +0.90% | | Pmtree::override_range | 236.5±6.94µs | 239.5±4.01µs | +1.27% | | Pmtree::set | **53.7±0.40µs** | 54.5±0.34µs | **+1.49%** | | Pmtree:delete | **53.7±0.32µs** | 54.6±0.57µs | **+1.68%** | | Set/FullMerkleTree::::set/1 | **543.7±7.42µs** | 554.6±6.48µs | **+2.00%** | | Set/FullMerkleTree::::set/10 | 5.5±0.02ms | 5.5±0.02ms | 0.00% | | Set/FullMerkleTree::::set/100 | **54.7±0.06ms** | 55.6±0.20ms | **+1.65%** | | Set/FullMerkleTree::::set_range/1 | **542.2±7.54µs** | 551.6±3.25µs | **+1.73%** | | Set/FullMerkleTree::::set_range/10 | **748.6±6.84µs** | 757.9±5.64µs | **+1.24%** | | Set/FullMerkleTree::::set_range/100 | 3.3±0.01ms | 3.3±0.02ms | 0.00% | | Set/OptimalMerkleTree::::set/1 | **546.2±3.23µs** | 553.5±4.62µs | **+1.34%** | | Set/OptimalMerkleTree::::set/10 | 5.5±0.02ms | 5.5±0.02ms | 0.00% | | Set/OptimalMerkleTree::::set/100 | **55.2±0.11ms** | 55.6±0.17ms | **+0.72%** | | Set/OptimalMerkleTree::::set_range/1 | **545.6±5.63µs** | 553.6±4.55µs | **+1.47%** | | Set/OptimalMerkleTree::::set_range/10 | **5.5±0.02ms** | 5.6±0.04ms | **+1.82%** | | Set/OptimalMerkleTree::::set_range/100 | **55.2±0.24ms** | 55.5±0.23ms | **+0.54%** | | zkey::upload_from_folder | 3.3±0.00s | 3.3±0.00s | 0.00% |