-
Notifications
You must be signed in to change notification settings - Fork 87
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
Etcd observability #1884
Etcd observability #1884
Conversation
Transaction cost differencesScript summary
|
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
40 | - | - | - | - |
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 | - | - | - | - | - |
Cost of Increment Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | +0.39 | +0.09 | - |
5 | - | - | ||
10 | - | |||
37 | - | - | - | - |
Cost of Decrement Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
40 | - | - | - | - |
Close
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
34 | - | - | - | - |
Contest
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | - | - | - | - |
2 | - | - | - | - |
3 | - | - | - | - |
5 | - | - | - | - |
10 | - | - | - | - |
27 | - | - | - | - |
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) | - | - | - | - | - |
(37, 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 | 6091 | 11.23 | 3.50 | 0.53 |
2 | 6292 | 13.65 | 4.25 | 0.57 |
3 | 6496 | 15.28 | 4.73 | 0.59 |
5 | 6895 | 19.98 | 6.17 | 0.66 |
10 | 7903 | 31.27 | 9.64 | 0.82 |
40 | 13936 | 98.39 | 30.22 | 1.78 |
Commit
transaction costs
This uses ada-only outputs for better comparability.
UTxO | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 561 | 2.44 | 1.16 | 0.20 |
2 | 743 | 3.38 | 1.73 | 0.22 |
3 | 922 | 4.36 | 2.33 | 0.24 |
5 | 1280 | 6.41 | 3.60 | 0.28 |
10 | 2178 | 12.13 | 7.25 | 0.40 |
54 | 10063 | 98.61 | 68.52 | 1.88 |
CollectCom
transaction costs
Parties | UTxO (bytes) | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|---|
1 | 57 | 529 | 26.44 | 7.58 | 0.44 |
2 | 114 | 636 | 35.89 | 10.22 | 0.54 |
3 | 171 | 747 | 41.99 | 12.08 | 0.61 |
4 | 226 | 858 | 53.01 | 15.10 | 0.73 |
5 | 282 | 969 | 65.41 | 18.42 | 0.85 |
6 | 338 | 1081 | 78.81 | 22.05 | 0.99 |
7 | 393 | 1192 | 76.23 | 21.91 | 0.98 |
8 | 449 | 1303 | 87.01 | 24.85 | 1.09 |
9 | 504 | 1414 | 95.54 | 27.28 | 1.18 |
Cost of Increment Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 1809 | 25.03 | 8.22 | 0.49 |
2 | 1886 | 26.06 | 9.10 | 0.51 |
3 | 2021 | 27.24 | 10.17 | 0.53 |
5 | 2383 | 32.56 | 13.28 | 0.61 |
10 | 3186 | 43.40 | 20.13 | 0.79 |
38 | 7216 | 96.95 | 55.94 | 1.65 |
Cost of Decrement Transaction
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 632 | 23.95 | 7.61 | 0.43 |
2 | 697 | 23.80 | 8.20 | 0.43 |
3 | 868 | 26.37 | 9.58 | 0.47 |
5 | 1263 | 32.39 | 12.60 | 0.56 |
10 | 2031 | 42.22 | 18.61 | 0.71 |
36 | 5654 | 88.72 | 48.76 | 1.47 |
Close
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 653 | 30.91 | 9.67 | 0.50 |
2 | 839 | 31.02 | 10.45 | 0.51 |
3 | 924 | 34.67 | 12.15 | 0.56 |
5 | 1317 | 37.77 | 14.71 | 0.62 |
10 | 1931 | 46.14 | 20.50 | 0.76 |
33 | 5566 | 96.90 | 52.60 | 1.56 |
Contest
transaction costs
Parties | Tx size | % max Mem | % max CPU | Min fee ₳ |
---|---|---|---|---|
1 | 699 | 35.95 | 11.01 | 0.55 |
2 | 806 | 38.11 | 12.31 | 0.58 |
3 | 941 | 40.20 | 13.61 | 0.61 |
5 | 1222 | 44.63 | 16.26 | 0.68 |
10 | 2082 | 58.26 | 24.08 | 0.89 |
27 | 4418 | 96.34 | 47.09 | 1.46 |
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 | 5996 | 28.33 | 9.34 | 0.71 |
2 | 6094 | 37.52 | 12.35 | 0.81 |
3 | 6276 | 48.04 | 15.87 | 0.93 |
4 | 6339 | 56.27 | 18.52 | 1.02 |
5 | 6447 | 62.90 | 20.69 | 1.09 |
6 | 6590 | 72.69 | 23.91 | 1.20 |
7 | 6701 | 80.00 | 26.36 | 1.28 |
8 | 6870 | 88.55 | 29.21 | 1.38 |
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 | 0 | 0 | 6091 | 19.66 | 6.46 | 0.62 |
10 | 1 | 57 | 6125 | 22.25 | 7.45 | 0.65 |
10 | 5 | 285 | 6261 | 30.51 | 10.66 | 0.75 |
10 | 10 | 566 | 6427 | 41.88 | 15.03 | 0.88 |
10 | 20 | 1140 | 6771 | 63.18 | 23.30 | 1.13 |
10 | 30 | 1708 | 7112 | 82.65 | 30.94 | 1.35 |
10 | 37 | 2109 | 7352 | 99.40 | 37.34 | 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-03-12 08:19:05.504601118 UTC
Baseline Scenario
Number of nodes | 1 |
---|---|
Number of txs | 300 |
Avg. Confirmation Time (ms) | 4.521342626 |
P99 | 7.419525419999985ms |
P95 | 5.3432980500000005ms |
P50 | 4.317292999999999ms |
Number of Invalid txs | 0 |
Memory data
Time | Used | Free |
---|---|---|
2025-03-12 08:17:49.60498565 UTC | 904M | 6216M |
2025-03-12 08:17:54.60504581 UTC | 1017M | 6049M |
2025-03-12 08:17:59.605021312 UTC | 1017M | 6049M |
2025-03-12 08:18:04.60499977 UTC | 1018M | 6048M |
2025-03-12 08:18:09.605063035 UTC | 1022M | 6044M |
2025-03-12 08:18:14.604945285 UTC | 1023M | 6042M |
Three local nodes
Number of nodes | 3 |
---|---|
Number of txs | 900 |
Avg. Confirmation Time (ms) | 29.534880531 |
P99 | 42.98605344999999ms |
P95 | 38.80685214999999ms |
P50 | 28.4910645ms |
Number of Invalid txs | 0 |
Memory data
Time | Used | Free |
---|---|---|
2025-03-12 08:18:28.495717173 UTC | 922M | 6152M |
2025-03-12 08:18:33.499929584 UTC | 1194M | 5876M |
2025-03-12 08:18:38.496905774 UTC | 1252M | 5756M |
2025-03-12 08:18:43.495728484 UTC | 1257M | 5704M |
2025-03-12 08:18:48.495774051 UTC | 1261M | 5700M |
2025-03-12 08:18:53.495755731 UTC | 1262M | 5698M |
2025-03-12 08:18:58.495818908 UTC | 1267M | 5692M |
2025-03-12 08:19:03.495737843 UTC | 1271M | 5688M |
0e5ede6
to
2f8673c
Compare
c6e118b
to
ef390c7
Compare
This should help us debug why the connectivity check stop after some time.
Separating keys is not needed, but this makes debugging easier.
This may be okay if the remote just shut down, lets log it at least.
ef390c7
to
db2f4b0
Compare
A few first changes to help debugging connectivity issues we saw in course of #1879.
Note that changing the
msg
key is not a (major) breaking change as watching is done using themsg
prefix and the port parsing inmatchVersion
is defensively done. The version check is bound to change anyways now (not do it on each message!)