33 lines
1.3 KiB
Bash
Executable File
33 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -eo pipefail
|
|
|
|
here="$(dirname "$0")"
|
|
|
|
#shellcheck source=ci/bench/common.sh
|
|
source "$here"/common.sh
|
|
|
|
# Run sdk benches
|
|
_ cargo +"$rust_nightly" bench --manifest-path sdk/Cargo.toml ${V:+--verbose} \
|
|
-- -Z unstable-options --format=json | tee -a "$BENCH_FILE"
|
|
|
|
# Run runtime benches
|
|
_ cargo +"$rust_nightly" bench --manifest-path runtime/Cargo.toml ${V:+--verbose} \
|
|
-- -Z unstable-options --format=json | tee -a "$BENCH_FILE"
|
|
|
|
(
|
|
# solana-keygen required when building C programs
|
|
_ cargo build --manifest-path=keygen/Cargo.toml
|
|
export PATH="$PWD/target/debug":$PATH
|
|
|
|
# Run sbf benches
|
|
_ cargo +"$rust_nightly" bench --manifest-path programs/sbf/Cargo.toml ${V:+--verbose} --features=sbf_c \
|
|
-- -Z unstable-options --format=json --nocapture | tee -a "$BENCH_FILE"
|
|
)
|
|
|
|
# Run banking/accounts bench. Doesn't require nightly, but use since it is already built.
|
|
_ cargo +"$rust_nightly" run --release --manifest-path banking-bench/Cargo.toml ${V:+--verbose} | tee -a "$BENCH_FILE"
|
|
_ cargo +"$rust_nightly" run --release --manifest-path accounts-bench/Cargo.toml ${V:+--verbose} -- --num_accounts 10000 --num_slots 4 | tee -a "$BENCH_FILE"
|
|
|
|
# Run zk-token-proof benches.
|
|
_ cargo +"$rust_nightly" bench --manifest-path programs/zk-token-proof/Cargo.toml ${V:+--verbose} | tee -a "$BENCH_FILE"
|