acheron e1afcbf71e v0.28.0 (#2527) 2 年之前
..
programs 1c6f86e5f7 Upgrade Solana to 1.16.0 (#2512) 2 年之前
scripts c1667120e6 bench: Add a script to sync benchmark results for all versions (#2477) 2 年之前
tests c1667120e6 bench: Add a script to sync benchmark results for all versions (#2477) 2 年之前
Anchor.toml c1667120e6 bench: Add a script to sync benchmark results for all versions (#2477) 2 年之前
Cargo.toml 5910dd3e2f Add benchmarking for compute units usage (#2466) 2 年之前
README.md c1667120e6 bench: Add a script to sync benchmark results for all versions (#2477) 2 年之前
bench.json e1afcbf71e v0.28.0 (#2527) 2 年之前
package.json e1afcbf71e v0.28.0 (#2527) 2 年之前
tsconfig.json 5910dd3e2f Add benchmarking for compute units usage (#2466) 2 年之前

README.md

Benchmark tests

The bench program and its tests are used to measure the performance of Anchor programs.

How

We run the same tests that measure some metric for each Anchor version starting from 0.27.0. If the difference between the results is greater than 1%, the new data will be saved in bench.json and Markdown files in /bench will be updated accordingly.

Scripts

:memo: TL;DR
If you've made changes to programs or tests in this directory, run anchor run sync, otherwise run anchor test --skip-lint.

anchor test --skip-lint: Run all tests and update benchmark files when necessary. This is the only command that needs to be run for most use cases.


The following scripts are useful when making changes to how benchmarking works.

anchor run sync: Sync all benchmark files by running tests for each version. If you've made changes to the bench program or its tests, you should run this command to sync the results.

anchor run sync-markdown: Sync Markdown files in /bench based on the data from bench.json.

anchor run generate-ix: Generate program instructions with repetitive accounts.


The following script is only for the maintainer(s) of Anchor.

anchor run bump-version -- <VERSION>: Bump the version in all benchmark files.