-
Notifications
You must be signed in to change notification settings - Fork 88
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
Import schnorrkel plutus #1742
base: master
Are you sure you want to change the base?
Import schnorrkel plutus #1742
Conversation
locallycompact
commented
Nov 18, 2024
- CHANGELOG updated or not needed
- Documentation updated or not needed
- Haddocks updated or not needed
- No new TODOs introduced or explained herafter
1cb11a3
to
eb5071d
Compare
Transaction cost differencesScript summary
|
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
44 | - | - | - | - |
Commit
transaction costs
UTxO | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
54 | - | - | - | - |
CollectCom
transaction costs
Parties | UTxO (bytes) | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|---|
1 | - | - | - | - | - |
2 | - | - | - | - | - |
3 | - | - | - | - | - |
4 | - | - | - | - | - |
5 | - | - | - | - | - |
6 | - | - | - | - | - |
7 | - | - | - | - | - |
8 | - | - | - | - | - |
9 | - | - | - | - | - |
10 | - | - | - | - | - |
Cost of Increment Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | ||
2 | - | - | - | - |
3 | - | +0.38 | +0.09 | - |
5 | - | - | ||
10 | - | - | - | - |
43 | - | - | - | - |
Cost of Decrement Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
45 | - | - | - | - |
Close
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
41 | - | - | - | - |
Contest
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
33 | - | - | - | - |
FanOut
transaction costs
UTxO, Parties | UTxO (bytes) | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|---|
(0, 10) | - | - | - | - | - |
(1, 10) | - | - | - | - | - |
(5, 10) | - | - | - | - | - |
(10, 10) | - | - | - | - | - |
(20, 10) | - | - | - | - | - |
(40, 10) | - | - | - | - | - |
(41, 10) | - | - | - | - | - |
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 | 6162 | 10.17 | 3.24 | 0.53 |
2 | 6365 | 12.21 | 3.88 | 0.56 |
3 | 6564 | 14.09 | 4.46 | 0.59 |
5 | 6966 | 18.36 | 5.81 | 0.65 |
10 | 7974 | 28.81 | 9.11 | 0.80 |
44 | 14814 | 98.04 | 30.85 | 1.82 |
Commit
transaction costs
This uses ada-only outputs for better comparability.
UTxO | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 563 | 2.44 | 1.16 | 0.20 |
2 | 742 | 3.38 | 1.73 | 0.22 |
3 | 923 | 4.36 | 2.33 | 0.24 |
5 | 1283 | 6.41 | 3.60 | 0.28 |
10 | 2179 | 12.13 | 7.25 | 0.40 |
54 | 10053 | 98.61 | 68.52 | 1.88 |
CollectCom
transaction costs
Parties | UTxO (bytes) | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|---|
1 | 57 | 525 | 24.20 | 7.07 | 0.42 |
2 | 114 | 636 | 32.99 | 9.55 | 0.51 |
3 | 170 | 747 | 39.78 | 11.57 | 0.59 |
4 | 228 | 858 | 49.24 | 14.27 | 0.69 |
5 | 281 | 969 | 59.09 | 17.03 | 0.79 |
6 | 340 | 1085 | 72.22 | 20.68 | 0.93 |
7 | 394 | 1192 | 74.18 | 21.48 | 0.96 |
8 | 453 | 1303 | 97.99 | 27.48 | 1.20 |
9 | 504 | 1414 | 98.24 | 28.05 | 1.21 |
Cost of Increment Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 1789 | 24.05 | 8.00 | 0.48 |
2 | 1952 | 25.48 | 9.13 | 0.51 |
3 | 2118 | 27.99 | 10.66 | 0.55 |
5 | 2527 | 33.24 | 13.89 | 0.63 |
10 | 3119 | 39.22 | 18.97 | 0.74 |
45 | 8167 | 98.96 | 61.91 | 1.76 |
Cost of Decrement Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 614 | 22.72 | 7.33 | 0.41 |
2 | 720 | 24.17 | 8.40 | 0.44 |
3 | 940 | 26.40 | 9.71 | 0.47 |
5 | 1248 | 30.36 | 12.15 | 0.54 |
10 | 1939 | 37.05 | 17.33 | 0.66 |
43 | 6702 | 94.56 | 55.49 | 1.61 |
Close
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 655 | 28.64 | 9.16 | 0.48 |
2 | 860 | 29.25 | 10.19 | 0.50 |
3 | 988 | 32.74 | 11.88 | 0.54 |
5 | 1445 | 35.95 | 14.62 | 0.61 |
10 | 2010 | 45.79 | 20.84 | 0.76 |
40 | 6410 | 97.51 | 58.06 | 1.64 |
Contest
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 672 | 33.35 | 10.42 | 0.52 |
2 | 824 | 35.34 | 11.70 | 0.56 |
3 | 946 | 37.29 | 12.96 | 0.59 |
5 | 1261 | 41.77 | 15.77 | 0.66 |
10 | 2003 | 51.96 | 22.36 | 0.82 |
31 | 5326 | 99.72 | 52.14 | 1.57 |
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 | 6051 | 26.08 | 8.83 | 0.69 |
2 | 6266 | 35.47 | 12.06 | 0.80 |
3 | 6194 | 39.06 | 13.09 | 0.83 |
4 | 6445 | 53.08 | 17.99 | 0.99 |
5 | 6609 | 59.49 | 20.17 | 1.07 |
6 | 6596 | 66.83 | 22.59 | 1.14 |
7 | 6943 | 80.96 | 27.56 | 1.31 |
8 | 6968 | 85.08 | 28.79 | 1.35 |
9 | 6960 | 90.80 | 30.61 | 1.41 |
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 ₳ |
---|---|---|---|---|---|---|
10 | 1 | 57 | 6196 | 19.62 | 6.80 | 0.63 |
10 | 5 | 285 | 6332 | 26.36 | 9.55 | 0.71 |
10 | 10 | 567 | 6500 | 37.04 | 13.82 | 0.84 |
10 | 20 | 1138 | 6840 | 57.20 | 21.90 | 1.07 |
10 | 30 | 1707 | 7181 | 77.10 | 29.90 | 1.30 |
10 | 41 | 2335 | 7557 | 98.35 | 38.45 | 1.55 |
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 2025-01-15 14:47:01.140569479 UTC
Baseline Scenario
Number of nodes | 1 |
---|---|
Number of txs | 300 |
Avg. Confirmation Time (ms) | 4.729781373 |
P99 | 7.575888829999975ms |
P95 | 5.7820709500000005ms |
P50 | 4.5844275ms |
Number of Invalid txs | 0 |
Three local nodes
Number of nodes | 3 |
---|---|
Number of txs | 900 |
Avg. Confirmation Time (ms) | 23.191433672 |
P99 | 114.48275541999999ms |
P95 | 30.63944745ms |
P50 | 20.937055ms |
Number of Invalid txs | 0 |
eb5071d
to
0e843b1
Compare
|
||
let tx' = txSpendingUTxO scriptUTxO | ||
|
||
send n1 $ input "NewTx" ["transaction" .= tx'] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking lovely.
I think the main thing we need here is to close the Head and make sure the UTxO can be fanned out back to L1.
0ee8e78
to
18531ee
Compare
7d8d530
to
d6ff585
Compare
23a82ef
to
d180493
Compare
7f70541
to
4042cc4
Compare
1cce7d3
to
8bef572
Compare
7d42c2b
to
366f7cf
Compare
add singlePartyUsesSchnorrkelScriptOnL2 scenario test Finalize schnorkel test case There is some refactoring in order but the test itself is fine. Update plutus source-repository-package treefmt fixup Have some ada for the min UTxO Almost there; insufficient collateral now Trying to be more clear about the UTxOs to pay for things WIP on schnorrkel; just missing script as input