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

Bump hardcoded deposit of script outputs to 2.2 #1175

Closed
wants to merge 1 commit into from

Conversation

ch1bo
Copy link
Collaborator

@ch1bo ch1bo commented Nov 22, 2023

Since we use inline datums, the deposit we need to put in outputs is higher now. When trying to initialize a head on mainnet this was reported to be 2193790 lovelace for the initTxs head output.

TODO: why did the end-to-end tests not fail before?


  • 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 22, 2023

Test Results

368 tests  ±0   363 ✔️ ±0   21m 27s ⏱️ +49s
124 suites ±0       5 💤 ±0 
    5 files   ±0       0 ±0 

Results for commit c05ee06. ± Comparison against base commit e5da3f6.

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Nov 22, 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-22 21:28:19.975667375 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.92 4.33 0.47
2 4796 13.28 5.24 0.51
3 5001 15.52 6.09 0.54
5 5416 19.74 7.70 0.60
10 6440 31.08 12.04 0.77
41 12796 99.77 38.25 1.80

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 534 12.23 4.81 0.31
2 726 15.93 6.48 0.36
3 910 19.77 8.20 0.41
5 1284 27.87 11.80 0.52
10 2214 50.58 21.69 0.81
18 3730 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.20 8.87 0.41
2 114 593 35.85 14.40 0.57
3 169 703 48.98 19.85 0.72
4 226 813 65.34 26.62 0.91
5 283 923 81.04 33.26 1.09

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 566 17.76 8.36 0.38
2 676 19.04 9.61 0.40
3 892 20.93 11.39 0.44
5 1320 24.61 14.83 0.51
10 2112 32.55 22.27 0.67
50 8843 94.92 82.46 1.90

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 572 21.33 9.69 0.42
2 710 22.84 11.06 0.45
3 875 24.69 12.70 0.48
5 1287 28.60 16.22 0.55
10 2105 37.46 24.10 0.72
44 7780 96.55 77.43 1.83

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 4550 19.96 8.70 0.57
2 4709 33.61 14.82 0.74
3 4888 50.46 22.37 0.93
4 5027 70.04 31.11 1.16
5 5245 93.07 41.41 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 8.85 3.72 0.44
5 1 57 4452 10.28 4.57 0.46
5 5 284 4595 15.46 7.75 0.53
5 10 569 4775 22.18 11.81 0.62
5 20 1139 5135 35.16 19.75 0.80
5 30 1705 5494 48.13 27.70 0.98
5 40 2279 5857 60.89 35.55 1.16
5 50 2847 6215 74.11 43.60 1.34
5 69 3928 6897 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-22 21:22:25.91198942 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.953933781
P99 105.51185105999996ms
P95 30.474912999999997ms
P50 20.864068ms
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.013147636
P99 9.86607788999998ms
P95 6.699584800000001ms
P50 4.760593999999999ms
Number of Invalid txs 0

@ffakenz ffakenz added this to the 0.14.0 milestone Nov 22, 2023
@ch1bo ch1bo mentioned this pull request Nov 22, 2023
4 tasks
@ch1bo
Copy link
Collaborator Author

ch1bo commented Nov 22, 2023

Could not reproduce the init tx being invalid due to too little ADA on the head output. Double checked that the calculated min utxo values of the local devnet used in hydra-cluster tests, on preview and mainnet (by running instrumented smoke tests). Everywhere I only saw min utxo values of < 2 ADA.

@ch1bo ch1bo closed this Nov 23, 2023
@ch1bo
Copy link
Collaborator Author

ch1bo commented Nov 23, 2023

Closed in favor of #1176

@ch1bo ch1bo deleted the bump-script-deposit branch November 28, 2023 07:15
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

3 participants