#! /bin/sh -e run_massif () { out=$1; shift valgrind --tool=massif --massif-out-file=$out \ --peak-inaccuracy=0 --pages-as-heap=no \ "$@" } run_wordchain () { out=$1 impl=$2 dict=$3 case $impl in lisp-*) run_massif $out runlisp -L${impl#lisp-} ./chain.lisp $dict ;; *) run_massif $out ./chain.$impl <$dict ;; esac } make -s list | while read i; do case $i in golang | lisp-*) continue ;; esac run_wordchain massif.$i.baseline $i /dev/null for d in DICT.*; do d=${d#DICT.} run_wordchain massif.$i.$d $i DICT.$d done done