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

ADR to use cbor for tx #1215

Merged
merged 4 commits into from
Jan 16, 2024
Merged

ADR to use cbor for tx #1215

merged 4 commits into from
Jan 16, 2024

Conversation

ghost
Copy link

@ghost ghost commented Dec 13, 2023

Related to #1213


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

@ghost ghost changed the title Abailly iokh/use cbor for tx ADR to use cbor for tx Dec 13, 2023
@ghost ghost mentioned this pull request Dec 13, 2023
8 tasks
Copy link

github-actions bot commented Dec 13, 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 2024-01-16 08:14:38.876130617 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial 985245919fcc6c0c5cd116023cd2c947c43e80dcbb5075fe12433fbb 4072
νCommit 7cb20fa71eb4c563ca283566ebe0aa65859d96c3f8cba35c52c181fd 2043
νHead 7a36661f5c15e9f1783aeaab890812c59b7286cbbc6de762d3110772 8816
μHead 8b111ac12274e46314769295a1c5dcab1d260096fc469fd698065463* 3851
  • 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 4372 10.44 4.03 0.46
2 4573 12.68 4.88 0.49
3 4777 14.73 5.65 0.52
5 5180 19.12 7.31 0.59
10 6188 30.20 11.51 0.75
41 12418 99.12 37.64 1.77

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 531 11.37 4.44 0.30
2 724 15.04 6.07 0.35
3 909 18.85 7.75 0.40
5 1284 26.90 11.27 0.51
10 2219 49.55 20.97 0.80
19 3905 99.43 41.75 1.43

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 56 479 21.07 8.25 0.40
2 113 590 32.26 12.75 0.53
3 169 700 45.80 18.23 0.68
4 227 810 63.83 25.46 0.89
5 284 920 79.22 31.84 1.06
6 341 1031 98.80 39.87 1.28

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 541 16.68 7.67 0.36
2 717 18.40 9.28 0.40
3 922 20.13 10.92 0.43
5 1270 23.27 13.86 0.49
10 2120 31.88 21.80 0.66
50 8820 98.93 83.58 1.94

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 565 20.18 8.94 0.40
2 767 22.26 10.69 0.44
3 844 23.34 11.69 0.46
5 1231 27.13 15.04 0.53
10 2136 37.58 23.85 0.72
43 7812 99.71 77.33 1.86

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 4222 15.19 6.26 0.50
2 4479 32.06 13.96 0.71
3 4630 47.87 20.98 0.89
4 4808 66.25 29.16 1.11
5 4980 87.46 38.58 1.35

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 4205 8.26 3.46 0.43
5 1 57 4239 9.28 4.13 0.44
5 5 284 4374 14.40 7.27 0.51
5 10 568 4543 20.13 10.90 0.59
5 20 1138 4883 32.60 18.60 0.76
5 30 1707 5224 44.94 26.25 0.93
5 40 2275 5562 57.46 33.97 1.10
5 50 2847 5905 69.56 41.52 1.27
5 74 4213 6718 99.34 59.96 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 2024-01-16 08:17:08.036970728 UTC

Baseline Scenario

Number of nodes 3
Number of txs 9000
Avg. Confirmation Time (ms) 22.801748541
P99 105.79543636000074ms
P95 32.25203944999999ms
P50 19.85858ms
Number of Invalid txs 0

Baseline Scenario

Number of nodes 1
Number of txs 3000
Avg. Confirmation Time (ms) 3.643581640
P99 4.722123449999997ms
P95 4.1576464ms
P50 3.565492ms
Number of Invalid txs 0

@ch1bo ch1bo self-assigned this Dec 14, 2023
@ch1bo ch1bo force-pushed the abailly-iokh/use-cbor-for-tx branch from ab5e8ea to 0ff427a Compare December 14, 2023 10:44
Copy link

github-actions bot commented Dec 14, 2023

Test Results

405 tests  ±0   398 ✅ ±0   15m 35s ⏱️ +31s
135 suites ±0     7 💤 ±0 
  5 files   ±0     0 ❌ ±0 

Results for commit 8b3a54a. ± Comparison against base commit 4b39911.

♻️ This comment has been updated with latest results.

@ch1bo ch1bo force-pushed the abailly-iokh/use-cbor-for-tx branch from 0ff427a to 5dce88f Compare December 21, 2023 10:12
@ch1bo ch1bo removed their assignment Jan 2, 2024
@ch1bo ch1bo assigned ghost Jan 10, 2024
@ghost ghost force-pushed the abailly-iokh/use-cbor-for-tx branch 2 times, most recently from 6e92ade to c7f0556 Compare January 11, 2024 16:12
@ghost ghost marked this pull request as ready for review January 11, 2024 16:15
@ghost ghost force-pushed the abailly-iokh/use-cbor-for-tx branch from c7f0556 to a3da488 Compare January 11, 2024 16:16
@ghost ghost self-requested a review January 11, 2024 16:16
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.

The context and decision are fine by me. See my suggestions for typos and link fixes, but also we could add the consequence as I suggested.

docs/adr/2023-12-06_029-use-cbor-for-tx.md Outdated Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Outdated Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Outdated Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Outdated Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Show resolved Hide resolved
docs/adr/2023-12-06_029-use-cbor-for-tx.md Outdated Show resolved Hide resolved
@ch1bo ch1bo force-pushed the abailly-iokh/use-cbor-for-tx branch from c7a4e86 to 8b3a54a Compare January 16, 2024 08:11
@locallycompact locallycompact merged commit 7a19916 into master Jan 16, 2024
21 checks passed
@locallycompact locallycompact deleted the abailly-iokh/use-cbor-for-tx branch January 16, 2024 10:37
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.

3 participants