Introduce subsystem benchmarking tool (#2528)
This tool makes it easy to run parachain consensus stress/performance testing on your development machine or in CI. ## Motivation The parachain consensus node implementation spans across many modules which we call subsystems. Each subsystem is responsible for a small part of logic of the parachain consensus pipeline, but in general the most load and performance issues are localized in just a few core subsystems like `availability-recovery`, `approval-voting` or `dispute-coordinator`. In the absence of such a tool, we would run large test nets to load/stress test these parts of the system. Setting up and making sense of the amount of data produced by such a large test is very expensive, hard to orchestrate and is a huge development time sink. ## PR contents - CLI tool - Data Availability Read test - reusable mockups and components needed so far - Documentation on how to get started ### Data Availability Read test An overseer is built ...
Showing
- Cargo.lock 90 additions, 2 deletionsCargo.lock
- Cargo.toml 1 addition, 0 deletionsCargo.toml
- polkadot/node/network/availability-recovery/Cargo.toml 4 additions, 0 deletionspolkadot/node/network/availability-recovery/Cargo.toml
- polkadot/node/network/availability-recovery/src/lib.rs 10 additions, 3 deletionspolkadot/node/network/availability-recovery/src/lib.rs
- polkadot/node/network/availability-recovery/src/metrics.rs 14 additions, 3 deletionspolkadot/node/network/availability-recovery/src/metrics.rs
- polkadot/node/network/availability-recovery/src/task.rs 2 additions, 1 deletionpolkadot/node/network/availability-recovery/src/task.rs
- polkadot/node/network/availability-recovery/src/tests.rs 1 addition, 28 deletionspolkadot/node/network/availability-recovery/src/tests.rs
- polkadot/node/overseer/src/lib.rs 2 additions, 0 deletionspolkadot/node/overseer/src/lib.rs
- polkadot/node/subsystem-bench/Cargo.toml 61 additions, 0 deletionspolkadot/node/subsystem-bench/Cargo.toml
- polkadot/node/subsystem-bench/README.md 216 additions, 0 deletionspolkadot/node/subsystem-bench/README.md
- polkadot/node/subsystem-bench/examples/availability_read.yaml 57 additions, 0 deletions...adot/node/subsystem-bench/examples/availability_read.yaml
- polkadot/node/subsystem-bench/grafana/availability-read.json 1874 additions, 0 deletionspolkadot/node/subsystem-bench/grafana/availability-read.json
- polkadot/node/subsystem-bench/grafana/task-cpu-usage.json 755 additions, 0 deletionspolkadot/node/subsystem-bench/grafana/task-cpu-usage.json
- polkadot/node/subsystem-bench/src/availability/cli.rs 37 additions, 0 deletionspolkadot/node/subsystem-bench/src/availability/cli.rs
- polkadot/node/subsystem-bench/src/availability/mod.rs 339 additions, 0 deletionspolkadot/node/subsystem-bench/src/availability/mod.rs
- polkadot/node/subsystem-bench/src/cli.rs 60 additions, 0 deletionspolkadot/node/subsystem-bench/src/cli.rs
- polkadot/node/subsystem-bench/src/core/configuration.rs 262 additions, 0 deletionspolkadot/node/subsystem-bench/src/core/configuration.rs
- polkadot/node/subsystem-bench/src/core/display.rs 191 additions, 0 deletionspolkadot/node/subsystem-bench/src/core/display.rs
- polkadot/node/subsystem-bench/src/core/environment.rs 333 additions, 0 deletionspolkadot/node/subsystem-bench/src/core/environment.rs
- polkadot/node/subsystem-bench/src/core/keyring.rs 40 additions, 0 deletionspolkadot/node/subsystem-bench/src/core/keyring.rs
Please register or sign in to comment