-
Notifications
You must be signed in to change notification settings - Fork 48
Description
Problem
Every benchmark run deploys contracts + runs setup transactions (~40s for a 6-contract DeFi scenario). For A/B performance testing where we run 4-8 iterations of the same scenario, this is pure overhead — the contracts are identical each time.
Proposed Solution
contender snapshot --scenario sharedEconomy.toml --output snapshot.json — save deployed contract addresses and DB state after setup.
contender spam --from-snapshot snapshot.json — skip deployment entirely, start spamming against known addresses.
Alternatively, a --reuse-db flag that detects contracts are already deployed at the expected addresses and skips setup.
Impact
Saves ~40s per benchmark run. For an 8-run A/B experiment, that's 5+ minutes of pure setup overhead eliminated. Also removes all setup-related variance from measurements.