From 0776bc94d7e11e4b13528fb0251b3e89df9b9bdd Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Sun, 23 Oct 2016 21:51:39 -0700 Subject: [PATCH] Add script to test gcc profile-guided optimizations --- tools/pgo_build.sh | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100755 tools/pgo_build.sh diff --git a/tools/pgo_build.sh b/tools/pgo_build.sh new file mode 100755 index 0000000..2eb2b23 --- /dev/null +++ b/tools/pgo_build.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# Try gcc profile-guided optimizations + +set -eu + +MAKE="make -j$(grep -c processor /proc/cpuinfo)" +DATAFILE="$HOME/data/silesia" + +$MAKE benchmark > /dev/null +echo "=====================" +echo "Original performance:" +echo "---------------------" +./benchmark "$@" "$DATAFILE" + +$MAKE CFLAGS=-fprofile-generate LDFLAGS=-fprofile-generate benchmark > /dev/null +./benchmark "$@" "$DATAFILE" > /dev/null +$MAKE CFLAGS=-fprofile-use benchmark > /dev/null +rm -f {lib,programs}/*.gcda +echo "==========================" +echo "PGO-optimized performance:" +echo "--------------------------" +./benchmark "$@" "$DATAFILE"