-
Notifications
You must be signed in to change notification settings - Fork 34
feat: add collections benchmark application for Rust SDK #1692
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
base: master
Are you sure you want to change the base?
Conversation
- Introduced a new application for benchmarking CRDT collection performance in Rust. - Implemented various benchmark methods for different collection types and sizes. - Integrated workflows for automated benchmarking processes.
- Introduced a new benchmarking suite using Criterion for measuring performance of various runtime operations. - Added single-threaded and multi-threaded benchmark groups for map, vector, and nested operations. - Implemented a GitHub Actions workflow to automate benchmark execution and report generation. - Updated Cargo.toml to include necessary dependencies for benchmarking.
E2E tests reportProtocol: ethereum
Protocol: icp
Protocol: near
|
…ime benchmarks workflow
…nd improved report paths
…nclude report step
…nd concurrent tests
…s, and memory usage tests
…ng string lengths
…moving setup code inside the benchmark iterations
…to accommodate longer test durations
…n scope for improved clarity and consistency
Merobox Proposals Workflows FailedThe following proposal workflow(s) failed:
Please check the workflow logs for more details. |
…st timeout duration to 120 minutes
Merobox Workflows FailedThe following workflow(s) failed after retries:
Please check the workflow logs for more details. |
|
Let's use this branch to debug the latency issues. cc: @xilosada @sept-en @sh3ll3x3c |
|
This pull request has been automatically marked as stale. If this pull request is still relevant, please leave any comment (for example, "bump"), and we'll keep it open. We are sorry that we haven't been able to prioritize reviewing it yet. Your contribution is very much appreciated. |
[core] Add Collections Benchmark App (Rust SDK)
Adds a comprehensive benchmark application for testing CRDT collection performance across different sizes, nesting levels, and operations.
What's Included
New App:
apps/collections-benchmark-rust/Collections Benchmarked
Test plan
Documentation update
Note
Adds a Rust CRDT collections benchmark app, Criterion benchmarks for runtime/storage, and a CI workflow to run and publish benchmark reports (including E2E).
/.github/workflows/benchmarks.ymlto run runtime, storage, and E2E workflow benchmarks; upload artifacts and post a combined summary.apps/collections-benchmark-rust(WASM app) with benchmark methods for CRDT collections,build.rs(ABI/state-schema emit),build.sh, reporting script, workflow spec, and README.crates/runtime/benches/{collections.rs,common.rs}with single- and multi-threaded tests; docs inbenches/README.md.crates/runtime/Cargo.tomlto includecriterionand[[bench]] collections.crates/storage/benches/{collections.rs,common.rs}with extensive single-/multi-threaded, value-size, edge-case, and memory tests; docs inbenches/README.md.crates/storage/Cargo.tomlto includecriterionand[[bench]] collections.apps/collections-benchmark-rustin workspace members and build scriptscripts/build-all-apps.sh.Cargo.lockfor new package.Written by Cursor Bugbot for commit 4e7b346. This will update automatically on new commits. Configure here.