Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

run frame-omni-bencher overhead command in CI for all runtimes in the runtime matrix #7459

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

clangenb
Copy link
Contributor

@clangenb clangenb commented Feb 5, 2025

As defined in #6347, we want to run the omni-benchers overhead command in the CI to be sure that it keeps working. This runs the CI for all runtimes except for glutton, as we can't send extrinsics to glutton currently. The check should be enabled after #7816 is merged.

Closes #6347

@clangenb clangenb requested review from a team as code owners February 5, 2025 08:18
@clangenb clangenb force-pushed the cl/run-frame-omni-bencher-in-ci branch 3 times, most recently from dc7194d to 9000c0c Compare February 5, 2025 09:03
@paritytech-review-bot paritytech-review-bot bot requested a review from a team February 5, 2025 09:42
@clangenb
Copy link
Contributor Author

clangenb commented Feb 5, 2025

Some tests failed because not all chains have development genesis presets. I shall add them in the same PR.

@mordamax
Copy link
Contributor

mordamax commented Feb 5, 2025

Some tests failed because not all chains have development genesis presets. I shall add them in the same PR.

may be this flag needs to be added?
https://github.com/paritytech/polkadot-sdk/blob/master/.github/workflows/runtimes-matrix.json#L108

if so you can reuse bench_flags from the matrix

@clangenb
Copy link
Contributor Author

clangenb commented Feb 5, 2025

Thanks a lot for the hint! I thought/hoped so too initially, however the flags are different, unfortunately.

I can overwrite the development preset with another one, but for the overhead command "none" is unfortunately not an option. It does need a preset.

@clangenb
Copy link
Contributor Author

clangenb commented Feb 5, 2025

I noticed that there is an open issue regarding the missing genesis presets. I extracted a separate PR for that:

Edit: The PRs for adding genesis presets have now been merged. So this PR is unblocked.

@clangenb clangenb marked this pull request as draft February 5, 2025 15:17
@clangenb clangenb force-pushed the cl/run-frame-omni-bencher-in-ci branch from e74e2d7 to 6962792 Compare March 4, 2025 09:32
@clangenb clangenb marked this pull request as ready for review March 4, 2025 09:39
@clangenb
Copy link
Contributor Author

clangenb commented Mar 4, 2025

@ggwpez everything works now except for glutton. The error says that it can't look up the transaction, but I can only find that the overhead command is executing system.remark, which should be supported by glutton. Is there an extrinsic I am missing?

Error log
Running short overhead benchmarking for PACKAGE_NAME=glutton-westend-runtime and RUNTIME_BLOB_PATH=./target/release/wbuild/glutton-westend-runtime/glutton_westend_runtime.compact.compressed.wasm
-rw-r--r-- 1 root root 4840334 Mar  4 10:03 ./target/release/wbuild/glutton-westend-runtime/glutton_westend_runtime.compact.compressed.wasm
Running command: ./target/release/frame-omni-bencher v1 benchmark overhead --runtime ./target/release/wbuild/glutton-westend-runtime/glutton_westend_runtime.compact.compressed.wasm
2025-03-04T10:08:11.598970Z  INFO polkadot_sdk_frame::benchmark::overhead: Identified Chain type from metadata: Parachain(paraid = 100)    
2025-03-04T10:08:12.362275Z  INFO polkadot_sdk_frame::benchmark::overhead: Per-block execution overhead [ns]:
Total: 34427576
Min: 331742, Max: 410174
Average: 344275, Median: 342620, Stddev: 9655.69
Percentiles 99th, 95th, 75th: 373583, 353799, 346876    
Error: Client(ApplyExtrinsicFailed(Validity(TransactionValidityError::Unknown(UnknownTransaction::CannotLookup))))

Edit: Ah ok, it seems that the error is misleading. This error is also thrown if the extrinsic is not signed by the sudo key for glutton, and the sudo key is missing in the presets; fixing it now.

@clangenb

This comment was marked as outdated.

@clangenb clangenb marked this pull request as draft March 4, 2025 11:27
@clangenb clangenb marked this pull request as ready for review March 6, 2025 08:55
@clangenb
Copy link
Contributor Author

clangenb commented Mar 6, 2025

I think the PR is now ready to be review. 🚀 And maybe give it a silent tag?

@alvicsam alvicsam added the R0-silent Changes should not be mentioned in any release notes label Mar 6, 2025
@clangenb
Copy link
Contributor Author

clangenb commented Mar 6, 2025

Wonderful, thanks for the approval. I think the PR is green enough for the merge queue. Can someone do that?

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
R0-silent Changes should not be mentioned in any release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Run omni-bencher overhead cmd in CI
3 participants