#!/usr/bin/env bash # Executes and replaces all benchmarks with the new weights SCRIPT_DIR=$(dirname "${BASH_SOURCE[0]}") STEPS=${1:-50} REPEAT=${2:-20} benchmark() { echo "Generating weights for $1..." start=`date +%s` ERROR=$($SCRIPT_DIR/../target/release/joystream-node benchmark \ --pallet=$1 \ --extrinsic=* \ --chain=dev \ --steps=$STEPS \ --repeat=$REPEAT \ --execution=wasm \ --output=. 2>&1 > /dev/null) if [[ $ERROR != *"Error"* ]]; then end=`date +%s` mv $SCRIPT_DIR/../*.rs $SCRIPT_DIR/../runtime/src/weights/ echo "Weights generated successfully for $1" echo "It took $((end-start)) seconds" else >&2 echo "$ERROR" >&2 echo "There was a problem generating the weights for $1, check the error above" exit 1 fi } # Joystream benchmarks benchmark storage_v2