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

cardano api 8.37 -> 8.38, cardano-node: 8.7.3 -> 8.8.0-pre #1297

Merged
merged 2 commits into from
Feb 21, 2024

Conversation

locallycompact
Copy link
Contributor

@locallycompact locallycompact commented Feb 8, 2024

The smoke tests are not compatible with mainnet anymore because of new field in the conway configuration files.


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

@locallycompact locallycompact changed the title Lc/cardano api 8.38 cardano api 8.37 -> 8.38 Feb 8, 2024
Copy link

github-actions bot commented Feb 8, 2024

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-02-21 20:18:30.759728003 UTC
Max. memory units 14000000
Max. CPU units 10000000000
Max. tx size (kB) 16384

Script summary

Name Hash Size (Bytes)
νInitial bccf2a430c016bc960fbf31b02694011cd399d20da8882aac9d33611 4110
νCommit 56b0f0b597150e619c76bed60683f3b1e42d7bc0685ed951b882bfc5 1975
νHead 86bff95ba20e9d1d1b34899a56d86bbacc9fed999260b27dcc92d128 9351
μHead 88f533cf67cd0fc93d7d9ccf0a8b1d69ffd1208a825efbebbc1d36ba* 4213
  • 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 4792 9.06 3.47 0.46
2 4996 10.61 4.05 0.49
3 5200 12.55 4.80 0.52
5 5597 16.53 6.33 0.58
10 6605 26.27 10.07 0.73
48 14246 99.77 38.28 1.86

Cost of Commit Transaction

This is using ada-only outputs for better comparability.

UTxO Tx size % max Mem % max CPU Min fee ₳
1 594 10.24 4.04 0.29
2 783 13.88 5.64 0.34
3 969 17.66 7.29 0.39
5 1345 25.66 10.74 0.49
10 2275 48.19 20.30 0.79
19 3963 97.83 40.79 1.41

Cost of CollectCom Transaction

Parties UTxO (bytes) Tx size % max Mem % max CPU Min fee ₳
1 57 548 16.93 6.68 0.36
2 114 654 26.44 10.55 0.47
3 170 764 38.23 15.38 0.60
4 226 878 52.64 21.27 0.77
5 282 984 65.83 26.84 0.92
6 337 1095 82.35 33.75 1.11
7 393 1205 99.58 41.00 1.30

Cost of Close Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 587 8.34 4.61 0.28
2 651 8.92 4.43 0.28
3 819 9.25 6.37 0.31
5 1256 12.10 9.67 0.37
10 1423 14.46 8.07 0.39
50 8143 52.53 64.36 1.40

Cost of Contest Transaction

Parties Tx size % max Mem % max CPU Min fee ₳
1 647 8.69 4.76 0.28
2 757 9.42 5.82 0.30
3 959 10.47 7.21 0.33
5 1275 12.33 9.68 0.38
10 2023 16.69 15.67 0.49
50 8221 52.34 64.40 1.40

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 4667 17.05 7.37 0.55
2 4738 27.03 11.70 0.66
3 4940 41.88 18.40 0.84
4 5064 53.63 23.46 0.98
5 5097 69.08 30.23 1.15
6 5386 98.74 43.47 1.50

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 4628 8.06 3.37 0.44
5 1 57 4662 8.79 3.90 0.45
5 5 284 4797 13.61 6.84 0.52
5 10 568 4965 19.58 10.49 0.60
5 20 1139 5306 30.90 17.53 0.76
5 30 1705 5645 42.85 24.84 0.92
5 40 2274 5984 54.38 31.98 1.08
5 50 2844 6323 65.50 38.95 1.24
5 79 4501 7314 99.21 59.77 1.70

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-02-21 20:21:03.031588039 UTC

Baseline Scenario

Number of nodes 3
Number of txs 9000
Avg. Confirmation Time (ms) 21.626328306
P99 105.84213762000054ms
P95 30.72659444999999ms
P50 19.075706500000003ms
Number of Invalid txs 0

Baseline Scenario

Number of nodes 1
Number of txs 3000
Avg. Confirmation Time (ms) 4.146526699
P99 5.946328709999987ms
P95 4.9410485ms
P50 4.042304ms
Number of Invalid txs 0

@locallycompact locallycompact force-pushed the lc/cardano-api-8.38 branch 2 times, most recently from a0d48ca to 4e7c342 Compare February 9, 2024 10:18
@ch1bo ch1bo requested a review from a team February 9, 2024 10:45
@locallycompact locallycompact force-pushed the lc/cardano-api-8.38 branch 13 times, most recently from 1242c9b to 252b084 Compare February 19, 2024 11:19
Copy link

github-actions bot commented Feb 19, 2024

Test Results

417 tests  +1   409 ✅ ±0   14m 3s ⏱️ +18s
139 suites ±0     8 💤 +1 
  5 files   ±0     0 ❌ ±0 

Results for commit a42a592. ± Comparison against base commit 4463d6f.

This pull request skips 1 test.
Test.CardanoNode ‑ withCardanoNodeOnKnownNetwork on mainnet starts synchronizing within 5 seconds

♻️ This comment has been updated with latest results.

@locallycompact locallycompact changed the title cardano api 8.37 -> 8.38 cardano api 8.37 -> 8.38, cardano-node: 8.7.3 -> 8.8.0-pre Feb 19, 2024
Copy link
Member

@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.

Also, commit d2b667a has an odd description. I don't think that my name is worth to be mentioned as the main commit message. According to our coding standards we want to put What a commit is about in the first line.

flake.nix Outdated Show resolved Hide resolved
CHANGELOG.md Show resolved Hide resolved
docs/docs/tutorial/index.md Outdated Show resolved Hide resolved
.github/workflows/explorer/docker-compose.yaml Outdated Show resolved Hide resolved
Copy link
Member

@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.

Don't disable tests and we need to clarify that this is a breaking change on the scripts as well.

hydra-cardano-api/src/Hydra/Cardano/Api/ScriptData.hs Outdated Show resolved Hide resolved
hydra-cluster/test/Test/CardanoNodeSpec.hs Show resolved Hide resolved
hydra-cluster/test/Test/CardanoNodeSpec.hs Show resolved Hide resolved
hydra-cluster/test/Test/CardanoNodeSpec.hs Outdated Show resolved Hide resolved
hydra-node/src/Hydra/Chain/CardanoClient.hs Show resolved Hide resolved
hydra-plutus/scripts/mHead.plutus Outdated Show resolved Hide resolved
@ch1bo
Copy link
Member

ch1bo commented Feb 20, 2024

Also, updating to latest plutus compiler seemed to have quite some effect on the script performance:

  • Overall slight increase in script size
  • 50% less memory usage in close and contest transactions
  • abort slightly less memory usage and may be possible with 6 parties now
  • .. maybe more (just had a quick look)

I need you to be aware of this and also document these changes in the changelog along with the breaking change on the scripts before we can merge this.

@locallycompact locallycompact force-pushed the lc/cardano-api-8.38 branch 4 times, most recently from 9fd3027 to 649e6e8 Compare February 21, 2024 10:01
@ch1bo ch1bo self-assigned this Feb 21, 2024
@ch1bo ch1bo self-requested a review February 21, 2024 10:35
@ch1bo ch1bo linked an issue Feb 21, 2024 that may be closed by this pull request
Copy link
Member

@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.

Addressed the must-haves myself now.

@locallycompact locallycompact force-pushed the lc/cardano-api-8.38 branch 3 times, most recently from 84ac271 to e261249 Compare February 21, 2024 19:52
Co-author: Sebastian Nagel <sebastian.nagel@ncoding.at>
@locallycompact locallycompact merged commit f496652 into master Feb 21, 2024
20 checks passed
@locallycompact locallycompact deleted the lc/cardano-api-8.38 branch February 21, 2024 20:29
@ch1bo ch1bo mentioned this pull request Feb 22, 2024
4 tasks
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.

Smoke tests on Sanchonet
2 participants