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

Move PostTxError input event into chain event type #1341

Merged
merged 3 commits into from
Mar 11, 2024
Merged

Conversation

ch1bo
Copy link
Collaborator

@ch1bo ch1bo commented Mar 6, 2024

This makes the input event interface more uniform and still allows the handling of a failed postTx in the head logic the same way.


  • 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 Mar 6, 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-03-11 08:41:07.06826212 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial bccf2a430c016bc960fbf31b02694011cd399d20da8882aac9d33611 4110
νCommit 56b0f0b597150e619c76bed60683f3b1e42d7bc0685ed951b882bfc5 1975
νHead 86bff95ba20e9d1d1b34899a56d86bbacc9fed999260b27dcc92d128 9351
μHead 88f533cf67cd0fc93d7d9ccf0a8b1d69ffd1208a825efbebbc1d36ba* 4213
  • 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 4794 8.68 3.31 0.46
2 4996 10.66 4.07 0.49
3 5196 12.55 4.80 0.51
5 5599 16.47 6.30 0.58
10 6604 26.46 10.15 0.73
48 14244 99.77 38.28 1.86

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 594 10.24 4.04 0.29
2 779 13.88 5.64 0.34
3 972 17.66 7.29 0.39
5 1338 25.66 10.74 0.49
10 2281 48.19 20.30 0.79
19 3963 97.83 40.79 1.41

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 544 16.88 6.67 0.36
2 114 654 27.34 10.88 0.48
3 170 768 39.38 15.79 0.62
4 226 874 51.18 20.74 0.75
5 283 984 67.63 27.51 0.94
6 340 1095 83.13 34.02 1.12

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 532 8.05 3.81 0.27
2 819 9.40 6.02 0.31
3 926 10.07 7.05 0.32
5 1306 12.38 9.88 0.38
10 1965 16.10 15.40 0.48
50 8033 50.56 63.13 1.37

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 647 8.65 4.75 0.28
2 757 9.30 5.77 0.30
3 1016 10.92 7.57 0.34
5 1236 11.97 9.38 0.37
10 1972 16.38 15.37 0.48
50 8053 51.27 63.51 1.38

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 4674 16.96 7.33 0.55
2 4863 28.82 12.64 0.69
3 4937 38.86 16.91 0.80
4 4971 52.06 22.70 0.95
5 5193 75.92 33.39 1.23
6 5328 93.26 40.95 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 4627 8.27 3.45 0.45
5 1 57 4662 8.79 3.90 0.45
5 5 285 4797 13.40 6.75 0.52
5 10 569 4967 19.58 10.49 0.60
5 20 1140 5307 30.90 17.53 0.76
5 30 1708 5647 42.64 24.76 0.92
5 40 2276 5985 54.17 31.89 1.08
5 50 2847 6326 65.92 39.13 1.24
5 80 4550 7339 99.94 60.31 1.72

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-03-11 08:43:17.038247011 UTC

Baseline Scenario

Number of nodes 3
Number of txs 9000
Avg. Confirmation Time (ms) 22.633383204
P99 45.879062170000005ms
P95 31.46996585ms
P50 20.693829ms
Number of Invalid txs 0

Baseline Scenario

Number of nodes 1
Number of txs 3000
Avg. Confirmation Time (ms) 4.898954403
P99 8.50078595999998ms
P95 6.697284249999998ms
P50 4.66615ms
Number of Invalid txs 0

@ch1bo ch1bo force-pushed the outcome-algebra branch from 189d580 to a2b7673 Compare March 7, 2024 07:59
@ch1bo ch1bo force-pushed the outcome-algebra branch from a2b7673 to aea2186 Compare March 8, 2024 07:01
Base automatically changed from outcome-algebra to master March 8, 2024 07:14
@ch1bo ch1bo self-assigned this Mar 8, 2024
@ch1bo ch1bo marked this pull request as ready for review March 8, 2024 16:32
@ch1bo ch1bo requested a review from a team March 8, 2024 16:33
@ch1bo ch1bo removed their assignment Mar 8, 2024
ch1bo and others added 3 commits March 11, 2024 09:36
This makes the input event interface more uniform and still allows the
handling of a failed postTx in the head logic the same way.
Seems like we don't have convincing coverage of removing optional
schemas from the specifications (it's in a oneof).
Copy link

Test Results

417 tests  ±0   409 ✅ ±0   13m 47s ⏱️ -16s
138 suites ±0     8 💤 ±0 
  5 files   ±0     0 ❌ ±0 

Results for commit 2346c2b. ± Comparison against base commit 536f012.

@v0d1ch v0d1ch merged commit cf5223e into master Mar 11, 2024
21 checks passed
@v0d1ch v0d1ch deleted the refactor-event branch March 11, 2024 08:49
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.

2 participants