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

Small fixups from going through the "Open a head on testnet" tutorial #1494

Merged
merged 9 commits into from
Jul 12, 2024

Conversation

noonio
Copy link
Contributor

@noonio noonio commented Jul 10, 2024

This adds a few fixes/improvements that came about after following the Open a head on testnet tutorial.

Mostly just a few versions needed to be fixed more directly.

Copy link

github-actions bot commented Jul 10, 2024

Test Results

437 tests  ±0   425 ✅ ±0   15m 9s ⏱️ +6s
143 suites ±0    12 💤 ±0 
  5 files   ±0     0 ❌ ±0 

Results for commit a3e4048. ± Comparison against base commit 5318bca.

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Jul 10, 2024

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 2024-07-12 16:28:14.963720556 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial baafeb5dc37bbe6e068784746bda0a3b1bb1d034fa0c55270f6079c1 4082
νCommit fe7af84822bcba542fae377ae7311fc5fd20152f925ccd980f73ecdc 2061
νHead 310e0178b7ef792f6bc63e283c05a96aced7f1c261a95f42dac0f63f 9374
μHead 21b2be9c2d22f14da9218071a5a3b4c8ce12cf7f483b11c21b3923b8* 4237
  • 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 4819 5.98 2.35 0.43
2 5019 7.48 2.95 0.45
3 5220 8.59 3.37 0.47
5 5624 11.60 4.57 0.52
10 6628 18.40 7.24 0.64
58 16278 86.04 33.93 1.81

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 554 9.69 3.82 0.28
2 748 12.48 5.10 0.32
3 934 15.33 6.40 0.36
5 1310 21.26 9.09 0.45
10 2246 37.35 16.27 0.67
25 5053 96.42 41.75 1.45

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 544 14.78 5.91 0.34
2 114 654 22.85 9.25 0.43
3 170 764 33.18 13.53 0.55
4 225 878 45.32 18.60 0.69
5 282 984 56.53 23.43 0.82
6 338 1095 71.90 29.91 0.99
7 394 1205 89.11 37.21 1.19

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 591 8.31 4.60 0.28
2 751 8.97 5.67 0.30
3 624 8.56 4.02 0.28
5 1219 11.93 9.51 0.37
10 1856 14.66 14.35 0.45
50 4810 39.43 24.22 0.86

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 624 8.65 4.73 0.28
2 846 9.74 6.15 0.31
3 908 10.10 6.89 0.32
5 1196 11.96 9.34 0.37
10 2129 17.45 16.33 0.50
50 8220 52.55 64.01 1.40

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 4696 16.95 7.34 0.55
2 4813 27.83 12.13 0.67
3 4879 39.81 17.36 0.81
4 5057 56.42 24.75 1.01
5 5083 65.88 28.63 1.11

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 4652 7.82 3.27 0.44
5 1 57 4685 8.97 3.98 0.46
5 5 285 4821 14.00 7.01 0.53
5 10 571 4992 19.13 10.30 0.60
5 20 1137 5328 30.87 17.52 0.76
5 30 1710 5674 42.61 24.75 0.92
5 40 2279 6013 54.14 31.88 1.08
5 50 2843 6347 65.68 39.03 1.24
5 79 4493 7330 99.39 59.85 1.71

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 2024-07-12 16:04:56.1240353 UTC

Baseline Scenario

Number of nodes 1
Number of txs 3000
Avg. Confirmation Time (ms) 4.922772026
P99 9.035398949999998ms
P95 5.809270449999997ms
P50 4.4013425ms
Number of Invalid txs 0

Three local nodes

Number of nodes 3
Number of txs 9000
Avg. Confirmation Time (ms) 21.472173118
P99 53.3403523600002ms
P95 29.42961615ms
P50 19.309455999999997ms
Number of Invalid txs 0

@noonio noonio self-assigned this Jul 11, 2024
@noonio noonio marked this pull request as ready for review July 11, 2024 12:10
docs/docs/tutorial/index.md Outdated Show resolved Hide resolved
@noonio noonio requested a review from a team July 11, 2024 12:15
@noonio noonio changed the title Small changes from going through the tutorial Small fixups from going through the "Open a head on testnet" tutorial Jul 11, 2024
@noonio noonio enabled auto-merge (squash) July 11, 2024 14:52
Copy link
Collaborator

@ch1bo ch1bo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great extensions! Only issue is the hydra-tui should not use the "fuel" keys we give to the node (in case someone wants to commit everything from that address).

docs/docs/tutorial/index.md Outdated Show resolved Hide resolved
@noonio noonio requested a review from ch1bo July 12, 2024 16:37
@noonio noonio disabled auto-merge July 12, 2024 16:52
@noonio noonio enabled auto-merge (squash) July 12, 2024 16:52
@noonio noonio merged commit fc6f433 into master Jul 12, 2024
21 checks passed
@noonio noonio deleted the small-tutorial-fixes branch July 12, 2024 21:53
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

5 participants