Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tidy node network configuration and documentation #1171

Merged
merged 2 commits into from
Nov 22, 2023

Conversation

abailly-iohk
Copy link
Contributor

Some minor changes to how we configure the network layer, and updating documentation.


  • CHANGELOG updated or not needed
  • Documentation updated or not needed
  • Haddocks updated or not needed
  • No new TODOs introduced or explained herafter

Copy link

github-actions bot commented Nov 21, 2023

Transactions Costs

Sizes and execution budgets for Hydra protocol transactions. Note that unlisted parameters are currently using arbitrary values and results are not fully deterministic and comparable to previous runs.

Metadata
Generated at 2023-11-21 10:58:03.738847114 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial 57dd0a3aba3f4477afed74e7d12b6e86d7abad22ee51612ff81b4194 4059
νCommit 171a1e6bdbc8aa96d957a65b3f505517386af06ba265e3f784741f67 2050
νHead e89b0c4a6155bac2434d1e500bd49c155b2b56744ccf5a0efa72a82e 9092
μHead 92368af5649999c05211407d9a837cdd10ecf98c5829b385e89a3648* 4062
  • The minting policy hash is only usable for comparison. As the script is parameterized, the actual script is unique per Head.

Cost of Init Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 4591 10.87 4.31 0.47
2 4798 12.97 5.11 0.50
3 5004 15.61 6.13 0.54
5 5416 19.67 7.67 0.60
10 6437 30.82 11.93 0.77
41 12797 99.44 38.11 1.79

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 537 12.23 4.81 0.31
2 726 15.93 6.48 0.36
3 913 19.77 8.20 0.41
5 1290 27.87 11.80 0.52
10 2212 50.58 21.69 0.81
18 3719 94.20 40.16 1.36

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 483 22.92 9.14 0.42
2 113 597 33.97 13.71 0.55
3 169 703 48.11 19.54 0.71
4 224 817 63.38 25.90 0.89
5 284 923 85.67 34.96 1.14
6 338 1034 97.96 40.48 1.28

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 540 17.72 8.32 0.38
2 723 19.52 9.97 0.41
3 913 21.05 11.51 0.44
5 1208 24.33 14.56 0.51
10 2127 32.23 22.24 0.66
50 5544 80.25 42.36 1.35

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 520 20.90 9.36 0.41
2 718 22.84 11.06 0.45
3 959 25.08 13.06 0.49
5 1311 28.90 16.43 0.56
10 2129 37.60 24.16 0.72
46 8116 99.29 80.08 1.89

Cost of Abort Transaction

Some variation because of random mixture of still initial and already committed outputs.

Parties Tx size % max Mem % max CPU Min fee ₳
1 4527 20.14 8.76 0.58
2 4709 33.94 14.95 0.74
3 4868 50.47 22.36 0.93
4 5021 69.82 31.03 1.16
5 5209 93.00 41.36 1.43

Cost of FanOut Transaction

Involves spending head output and burning head tokens. Uses ada-only UTxO for better comparability.

Parties UTxO UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
5 0 0 4417 9.21 3.88 0.45
5 1 57 4452 10.28 4.57 0.46
5 5 285 4597 15.20 7.64 0.53
5 10 570 4776 22.18 11.81 0.62
5 20 1140 5136 34.79 19.60 0.80
5 30 1706 5495 47.90 27.60 0.98
5 40 2278 5857 61.12 35.65 1.16
5 50 2847 6215 73.98 43.55 1.34
5 69 3924 6893 98.80 58.72 1.68

End-To-End Benchmark Results

This page is intended to collect the latest end-to-end benchmarks results produced by Hydra's Continuous Integration system from the latest master code.

Please take those results with a grain of salt as they are currently produced from very limited cloud VMs and not controlled hardware. Instead of focusing on the absolute results, the emphasis should be on relative results, eg. how the timings for a scenario evolve as the code changes.

Generated at 2023-11-21 10:51:13.911909024 UTC

3-nodes Scenario

A rather typical setup, with 3 nodes forming a Hydra head.

Number of nodes 3
Number of txs 900
Avg. Confirmation Time (ms) 22.986558941
P99 41.87834704999987ms
P95 32.00685159999999ms
P50 21.437697ms
Number of Invalid txs 0

Baseline Scenario

This scenario represents a minimal case and as such is a good baseline against which to assess the overhead introduced by more complex setups. There is a single hydra-node d with a single client submitting single input and single output transactions with a constant UTxO set of 1.

Number of nodes 1
Number of txs 300
Avg. Confirmation Time (ms) 5.179631846
P99 8.43394507ms
P95 6.811069100000001ms
P50 5.040398ms
Number of Invalid txs 0

Copy link

github-actions bot commented Nov 21, 2023

Test Results

368 tests  ±0   363 ✔️ ±0   20m 42s ⏱️ +54s
124 suites ±0       5 💤 ±0 
    5 files   ±0       0 ±0 

Results for commit e24b580. ± Comparison against base commit 4cc76a4.

♻️ This comment has been updated with latest results.

@v0d1ch v0d1ch merged commit e5da3f6 into master Nov 22, 2023
20 checks passed
@v0d1ch v0d1ch deleted the abailly-iohk/tidy-node-network branch November 22, 2023 21:14
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.

None yet

2 participants