diff --git a/run-bench.py b/run-bench.py index cf86d0da..04946393 100644 --- a/run-bench.py +++ b/run-bench.py @@ -4,6 +4,7 @@ parser = argparse.ArgumentParser() parser.add_argument('--branchcompare', action='store_true', help='Compare benchmarks of current branch with main. Provide an optional --filter') +parser.add_argument("-b", '--branch', type=str, default="main", required=False) parser.add_argument('--benchcompare', type=str, help='Compare simd bench with stdsort methods. Requires one of qsort, qselect, partialsort, argsort or argselect') parser.add_argument("-f", '--filter', type=str, required=False) args = parser.parse_args() @@ -36,7 +37,8 @@ rc = subprocess.check_call("./scripts/bench-compare.sh '%s' '%s'" % (baseline, contender), shell=True) if args.branchcompare: + branch = args.branch if args.filter is None: - rc = subprocess.call("./scripts/branch-compare.sh") + rc = subprocess.check_call("./scripts/branch-compare.sh '%s'" % (branch), shell=True) else: - rc = subprocess.check_call("./scripts/branch-compare.sh '%s'" % args.filter, shell=True) + rc = subprocess.check_call("./scripts/branch-compare.sh '%s' '%s'" % (branch, args.filter), shell=True) diff --git a/scripts/branch-compare.sh b/scripts/branch-compare.sh index 6b6b6610..91d3c681 100755 --- a/scripts/branch-compare.sh +++ b/scripts/branch-compare.sh @@ -5,7 +5,8 @@ BASE_DIR=$(dirname $SCRIPT_DIR) branch=$(git rev-parse --abbrev-ref HEAD) #br_commit=$(git rev-parse $branch) #main_commit=$(git rev-parse main) -echo "Comparing main branch with $branch" +basebranch=$1 +echo "Comparing $basebranch branch with $branch" build_branch() { dir_name=$1 @@ -39,14 +40,14 @@ if [ ! -d google-benchmark ]; then fi compare=$(realpath google-benchmark/tools/compare.py) build_branch $branch -build_branch "main" +build_branch $basebranch contender=$(realpath ${branch}/builddir/benchexe) -baseline=$(realpath main/builddir/benchexe) +baseline=$(realpath ${basebranch}/builddir/benchexe) -if [ -z "$1" ]; then +if [ -z "$2" ]; then echo "Comparing all benchmarks .." $compare benchmarks $baseline $contender else - echo "Comparing benchmark $1 .." - $compare benchmarksfiltered $baseline $1 $contender $1 + echo "Comparing benchmark $2 .." + $compare benchmarksfiltered $baseline $2 $contender $2 fi