summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/benchalloc.sh12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/benchalloc.sh b/scripts/benchalloc.sh
new file mode 100644
index 0000000..8409938
--- /dev/null
+++ b/scripts/benchalloc.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+if [ $# != 1 ] ; then
+ echo Run this in a directory containing benchmarks and pass it the name of a benchmark. It will dump allocations out to trace.log
+ exit
+fi
+
+set -eu
+
+go test -c
+
+GODEBUG=allocfreetrace=1 ./$(basename $(pwd)).test.exe -test.run=none -test.bench=$1 -test.benchmem -test.benchtime=1ns 2> >(sed -n '/benchmark.go:75/,$p' > trace.log)