Files
Earle LoweandGitHub e07d1eb5de Use #!/usr/bin/env bash (#18762)
* Use #!/usr/bin/env bash

* Update setup-poetry.sh

* Use #!/usr/bin/env bash for shebang

* fix up typo for leading space

* For consistency fix up a few other scripts
2024-11-04 15:22:52 -07:00

34 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# pass in the name of the test run as the first argument
run_benchmark() {
# shellcheck disable=SC2086
python -m tools.test_full_sync run $3 --profile --test-constants "$1" &
test_pid=$!
python -m tools.cpu_utilization $test_pid
mkdir -p "$2"
mv test-full-sync.log cpu.png cpu-usage.log plot-cpu.gnuplot "$2"
python -m tools.test_full_sync analyze
mv slow-batch-*.profile slow-batch-*.png "$2"
# python -m chia.util.profiler profile-node >"$2/node-profile.txt"
# mv profile-node "$2"
}
cd ..
if [ "$1" = "" ]; then
TEST_NAME="node-benchmark"
else
TEST_NAME=$1
fi
# generate the test blockchain databases by running:
# python -m tools.generate_chain --fill-rate 0 --length 1500 --block-refs 1
# python -m tools.generate_chain --fill-rate 100 --length 500 --block-refs 0
run_benchmark stress-test-blockchain-1500-0-refs.sqlite "${TEST_NAME}-sync-empty" ""
run_benchmark stress-test-blockchain-1500-0-refs.sqlite "${TEST_NAME}-keepup-empty" --keep-up
run_benchmark stress-test-blockchain-500-100.sqlite "${TEST_NAME}-sync-full" ""
run_benchmark stress-test-blockchain-500-100.sqlite "${TEST_NAME}-keepup-full" --keep-up