-
Notifications
You must be signed in to change notification settings - Fork 84
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
Incremental commits off-chain #1541
base: master
Are you sure you want to change the base?
Conversation
noonio
commented
Jul 31, 2024
- CHANGELOG updated or not needed
- Documentation updated or not needed
- Haddocks updated or not needed
- No new TODOs introduced or explained herafter
Transaction costsSizes and execution budgets for Hydra protocol transactions. Note that unlisted parameters are currently using
Script summary
|
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 5188 | 5.61 | 2.21 | 0.44 |
2 | 5387 | 7.09 | 2.80 | 0.46 |
3 | 5590 | 8.59 | 3.40 | 0.49 |
5 | 5994 | 11.12 | 4.39 | 0.54 |
10 | 6999 | 18.06 | 7.14 | 0.66 |
56 | 16244 | 81.53 | 32.25 | 1.76 |
Commit
transaction costs
This uses ada-only outputs for better comparability.
UTxO | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 557 | 10.52 | 4.15 | 0.29 |
2 | 746 | 13.86 | 5.65 | 0.34 |
3 | 933 | 17.33 | 7.20 | 0.38 |
5 | 1307 | 24.65 | 10.44 | 0.48 |
10 | 2249 | 45.22 | 19.36 | 0.75 |
20 | 4110 | 95.99 | 40.76 | 1.40 |
CollectCom
transaction costs
Parties | UTxO (bytes) | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|---|
1 | 57 | 549 | 22.14 | 8.66 | 0.42 |
2 | 114 | 659 | 33.03 | 13.08 | 0.54 |
3 | 171 | 769 | 47.45 | 18.95 | 0.70 |
4 | 226 | 883 | 58.79 | 23.77 | 0.84 |
5 | 282 | 989 | 77.65 | 31.47 | 1.05 |
6 | 339 | 1100 | 89.82 | 36.84 | 1.19 |
Cost of Decrement Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 630 | 17.71 | 7.79 | 0.38 |
2 | 764 | 18.64 | 8.82 | 0.40 |
3 | 892 | 20.39 | 10.30 | 0.43 |
5 | 1351 | 25.68 | 13.78 | 0.52 |
10 | 2073 | 34.43 | 20.82 | 0.67 |
49 | 7745 | 95.14 | 72.85 | 1.78 |
Close
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 638 | 21.02 | 9.41 | 0.42 |
2 | 830 | 22.82 | 11.12 | 0.45 |
3 | 985 | 24.33 | 12.57 | 0.48 |
5 | 1178 | 26.90 | 15.02 | 0.53 |
10 | 1889 | 34.35 | 22.26 | 0.67 |
50 | 7962 | 99.45 | 83.73 | 1.91 |
Contest
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 673 | 27.14 | 11.67 | 0.48 |
2 | 822 | 28.94 | 13.20 | 0.52 |
3 | 1023 | 31.02 | 15.02 | 0.55 |
5 | 1313 | 34.99 | 18.37 | 0.62 |
10 | 2075 | 44.27 | 26.44 | 0.79 |
39 | 6284 | 98.71 | 73.01 | 1.75 |
Abort
transaction costs
There is some variation due to the random mixture of initial and already committed outputs.
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 5082 | 17.47 | 7.60 | 0.57 |
2 | 5230 | 29.35 | 12.94 | 0.71 |
3 | 5325 | 38.98 | 17.11 | 0.82 |
4 | 5328 | 48.38 | 21.13 | 0.93 |
5 | 5489 | 67.03 | 29.51 | 1.15 |
6 | 5597 | 91.68 | 40.69 | 1.43 |
FanOut
transaction costs
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 | 5023 | 7.75 | 3.28 | 0.46 |
5 | 1 | 57 | 5056 | 8.69 | 3.91 | 0.47 |
5 | 5 | 284 | 5192 | 13.41 | 6.84 | 0.54 |
5 | 10 | 569 | 5361 | 18.87 | 10.31 | 0.61 |
5 | 20 | 1137 | 5700 | 30.38 | 17.51 | 0.77 |
5 | 30 | 1707 | 6041 | 41.90 | 24.72 | 0.93 |
5 | 40 | 2278 | 6382 | 53.03 | 31.76 | 1.09 |
5 | 50 | 2843 | 6717 | 64.56 | 38.97 | 1.25 |
5 | 81 | 4610 | 7772 | 99.62 | 61.05 | 1.74 |
End-to-end benchmark results
This page is intended to collect the latest end-to-end benchmark results produced by Hydra's continuous integration (CI) system from the latest master
code.
Please note that these results are approximate as they are currently produced from limited cloud VMs and not controlled hardware. Rather than focusing on the absolute results, the emphasis should be on relative results, such as how the timings for a scenario evolve as the code changes.
Generated at 2024-09-05 09:20:48.344741988 UTC
Baseline Scenario
Number of nodes | 1 |
---|---|
Number of txs | 3000 |
Avg. Confirmation Time (ms) | 4.966539102 |
P99 | 8.192604079999994ms |
P95 | 6.6394388ms |
P50 | 4.775601ms |
Number of Invalid txs | 0 |
Three local nodes
Number of nodes | 3 |
---|---|
Number of txs | 9000 |
Avg. Confirmation Time (ms) | 23.986945374 |
P99 | 105.62266186000006ms |
P95 | 33.37502679999999ms |
P50 | 21.4751085ms |
Number of Invalid txs | 0 |
235acca
to
273fe91
Compare
53b33e9
to
8d8d3a3
Compare
@noonio When we continue work here, we should take a step back again given the new overall design of #199 with details from #1571. The overall off-chain story has not changed much, but is basically separated in two parts:
|
7ea2e9f
to
e63ca63
Compare
- Using an empty head - Getting some funds - About to commit to the empty open head!
We are aiming for the simplified case where a user wants to spend all provided UTxO without giving a blueprint to customize how to spend it.
- Submit the signed increment transaction - Wait for the commit to be finalised
We generalize the Maybe Head into a CommitInfo data structure to aggregate a read model of anything we need to distinguish the HTTP server's behavior on POST /commit
Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
Perhaps we could get away with just one handle and distinguish using CommitInfo type in the end. Let's keep it verbose for now. Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
Rename draftIncrementalCommitTx to draftDepositTx Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
8c0728e
to
a39f11a
Compare
Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
Signed-off-by: Sasha Bogicevic <[email protected]>
deadline Signed-off-by: Sasha Bogicevic <[email protected]>
e8ac685
to
bce740b
Compare
Signed-off-by: Sasha Bogicevic <[email protected]>
bce740b
to
7dc4c35
Compare