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

Separate property checked for logging schemas #1166

Merged
merged 1 commit into from
Nov 19, 2023

Conversation

abailly-iohk
Copy link
Contributor


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

@abailly-iohk abailly-iohk force-pushed the abailly-iohk/simplify-json-schema-spec branch from 117a450 to a221a44 Compare November 16, 2023 10:14
@abailly-iohk abailly-iohk requested review from ffakenz and ch1bo and removed request for ffakenz November 16, 2023 10:14
@abailly-iohk abailly-iohk force-pushed the abailly-iohk/simplify-json-schema-spec branch from a221a44 to 3904636 Compare November 16, 2023 10:15
Copy link

github-actions bot commented Nov 16, 2023

Test Results

368 tests  +1   363 ✔️ +1   20m 0s ⏱️ -44s
124 suites ±0       5 💤 ±0 
    5 files   ±0       0 ±0 

Results for commit d5f1370. ± Comparison against base commit d211207.

This pull request removes 1 and adds 2 tests. Note that renamed tests count towards both.
Hydra.Logging ‑ HydraLog
Hydra.Logging ‑ Schema covers all defined log entries
Hydra.Logging ‑ Validates logs.yaml schema

♻️ This comment has been updated with latest results.

Copy link

github-actions bot commented Nov 16, 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 2023-11-19 17:37:11.499377281 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial 57dd0a3aba3f4477afed74e7d12b6e86d7abad22ee51612ff81b4194 4059
νCommit 171a1e6bdbc8aa96d957a65b3f505517386af06ba265e3f784741f67 2050
νHead e89b0c4a6155bac2434d1e500bd49c155b2b56744ccf5a0efa72a82e 9092
μHead 92368af5649999c05211407d9a837cdd10ecf98c5829b385e89a3648* 4062
  • 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 4593 11.27 4.48 0.48
2 4800 13.09 5.16 0.50
3 5004 15.56 6.11 0.54
5 5414 19.83 7.74 0.60
10 6444 30.87 11.95 0.77
41 12796 99.49 38.13 1.79

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 537 12.23 4.81 0.31
2 726 15.93 6.48 0.36
3 906 19.77 8.20 0.41
5 1287 27.87 11.80 0.52
10 2227 50.58 21.69 0.81
18 3712 94.20 40.16 1.36

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 483 22.20 8.87 0.41
2 114 593 34.72 13.98 0.56
3 170 703 49.10 19.90 0.72
4 227 813 64.28 26.24 0.89
5 283 923 84.51 34.54 1.12

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 544 17.72 8.32 0.38
2 700 19.04 9.63 0.40
3 973 21.23 11.64 0.45
5 1264 24.65 14.80 0.51
10 2117 32.05 22.16 0.66
50 9040 97.83 84.21 1.95

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 584 21.37 9.73 0.42
2 747 23.14 11.34 0.45
3 959 25.16 13.10 0.49
5 1364 28.78 16.42 0.56
10 2008 36.47 23.35 0.70
44 7805 96.98 77.62 1.84

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 4521 20.18 8.77 0.58
2 4707 33.72 14.86 0.74
3 4856 50.53 22.38 0.93
4 5034 69.76 31.01 1.16
5 5243 92.03 41.00 1.42

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 4417 9.21 3.88 0.45
5 1 57 4452 10.28 4.57 0.46
5 5 285 4597 15.70 7.84 0.54
5 10 569 4776 21.95 11.72 0.62
5 20 1140 5137 34.92 19.66 0.80
5 30 1708 5496 48.14 27.70 0.98
5 40 2277 5856 61.12 35.65 1.16
5 50 2845 6214 74.11 43.60 1.34
5 70 3977 6926 99.64 59.33 1.69

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 2023-11-19 17:29:37.912065308 UTC

3-nodes Scenario

A rather typical setup, with 3 nodes forming a Hydra head.

Number of nodes 3
Number of txs 900
Avg. Confirmation Time (ms) 21.885880932
P99 114.88799465ms
P95 30.603290799999996ms
P50 18.7326505ms
Number of Invalid txs 0

Baseline Scenario

This scenario represents a minimal case and as such is a good baseline against which to assess the overhead introduced by more complex setups. There is a single hydra-node d with a single client submitting single input and single output transactions with a constant UTxO set of 1.

Number of nodes 1
Number of txs 300
Avg. Confirmation Time (ms) 3.699243813
P99 4.970547599999999ms
P95 4.307704050000001ms
P50 3.624109ms
Number of Invalid txs 0

@abailly-iohk abailly-iohk added the tidying A small change improving the "habitability" of the code. Emphasis on small. label Nov 16, 2023
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.

Looks good. Maybe you want to do the same with all call sites of prop_validateJSONSchema (IIRC there are multiple)

@abailly-iohk
Copy link
Contributor Author

Yes, but AFAICT this is the only call site we conjoined the 2 properties. Will double check just in case.

@v0d1ch v0d1ch force-pushed the abailly-iohk/simplify-json-schema-spec branch from 3904636 to d5f1370 Compare November 19, 2023 17:25
@v0d1ch v0d1ch merged commit fcae9ca into master Nov 19, 2023
20 checks passed
@v0d1ch v0d1ch deleted the abailly-iohk/simplify-json-schema-spec branch November 19, 2023 17:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tidying A small change improving the "habitability" of the code. Emphasis on small.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants