Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions benchmarks/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
results/
10 changes: 5 additions & 5 deletions benchmarks/benchmark.sh
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
#!/bin/sh

RESULTS="results"
RESULTS=${1:-"results"}
LOGFILE=benchmarks.log

function print_log() {
print_log() {

local message=$1

echo `date +"%Y-%m-%d %H:%M:%S"` "["`date +%s`"] : $message" >> $RESULTS/$LOGFILE;

}

mkdir -p $RESULTS
mkdir -p "$RESULTS"
# rm $RESULTS/$LOGFILE || true

echo "==> verifying datalog programs";
Expand All @@ -20,5 +20,5 @@ print_log "==> verifying datalog programs";
# bash putbxdebug.sh $RESULTS
# bash putbxdebug.inc.sh $RESULTS

bash putbx.sh $RESULTS
bash putbx.inc.sh $RESULTS
bash putbx.sh "$RESULTS"
bash putbx.inc.sh "$RESULTS"
41 changes: 41 additions & 0 deletions benchmarks/compare_results.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/bin/sh

# $ ./compare_results.sh <DIR1> <DIR2> list
# $ ./compare_results.sh <DIR1> <DIR2> check <REL-PATH> [<DIFF-CMD>]
# $ ./compare_results.sh <DIR1> <DIR2> check_all

if [ $# -lt 2 ]; then
echo "invalid number of arguments"
fi
LEFT=$1
RIGHT=$2
CMD=${3:-check_all}

case $CMD in
list)
echo "$LEFT:"
for FILE in $(ls "$LEFT"/gensql/*/*.sql); do
RELPATH="${FILE##"$LEFT/"}"
echo "* $RELPATH"
done
;;
check)
RELPATH=$4
DIFF=${5:-diff}
echo "Compare $LEFT and $RIGHT"
echo "=======<$RELPATH>======="
"$DIFF" "$LEFT/$RELPATH" "$RIGHT/$RELPATH"
;;
check_all)
DIFF=${5:-diff}
echo "Compare $LEFT and $RIGHT"
for FILE in $(ls "$LEFT"/gensql/*/*.sql); do
RELPATH="${FILE##"$LEFT/"}"
echo "=======<$RELPATH>======="
"$DIFF" "$LEFT/$RELPATH" "$RIGHT/$RELPATH"
done
;;
*)
echo "invalid command ($CMD)"
;;
esac
9 changes: 5 additions & 4 deletions benchmarks/putbx.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,19 @@ function print_log() {

mkdir -p $RESULTS
mkdir -p $RESULTS/gensql
mkdir -p $RESULTS/genlean
mkdir -p $RESULTS/compile

# rm $RESULTS/$LOGFILE || true
# rm $RESULTS/$RESULTSFILE || true

for FILE in $(cat dl_list)
do
print_log "==> running on $FILE.dl"
echo "==> running on $FILE.dl"
print_log "==> running on $FILE.dl"
echo "==> running on $FILE.dl"
mkdir -p $RESULTS/compile/$FILE
mkdir -p $RESULTS/gensql/$FILE
/usr/bin/time -a -f "$FILE , %e" -o $RESULTS/$RESULTSFILE birds -f $FILE.dl -o $RESULTS/gensql/$FILE.sql -v -u > $RESULTS/compile/$FILE.log 2>> $RESULTS/compile/$FILE.err
mkdir -p $RESULTS/genlean/$FILE
/usr/bin/time -a -f "$FILE , %e" -o $RESULTS/$RESULTSFILE birds -f $FILE.dl -o $RESULTS/gensql/$FILE.sql -v -u -l $RESULTS/genlean/$FILE.lean > $RESULTS/compile/$FILE.log 2>> $RESULTS/compile/$FILE.err
sleep 10
done

50 changes: 50 additions & 0 deletions benchmarks/see_results.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/sh

# $ ./see_results.sh see_log <DIR>
# $ ./see_results.sh see_err <DIR>
# $ ./see_results.sh diff_log <DIR1> <DIR2>
# $ ./see_results.sh diff_err <DIR1> <DIR2>

if [ $# -lt 2 ]; then
echo "invalid number of arguments"
fi

CMD=$1

case $CMD in
see_log)
DIR=$2
for FILE in "$DIR"/compile/*/*.log; do
echo "=======<$FILE>======="
cat "$FILE"
done
;;
see_err)
DIR=$2
for FILE in "$DIR"/compile/*/*.err; do
echo "=======<$FILE>======="
cat "$FILE"
done
;;
diff_log)
LEFT=$2
RIGHT=$3
for FILE in "$LEFT"/compile/*/*.log; do
RELPATH="${FILE##"$LEFT/"}"
echo "=======<$RELPATH>======="
diff -u "$LEFT/$RELPATH" "$RIGHT/$RELPATH"
done
;;
diff_err)
LEFT=$2
RIGHT=$3
for FILE in "$LEFT"/compile/*/*.err; do
RELPATH="${FILE##"$LEFT/"}"
echo "=======<$RELPATH>======="
diff -u "$LEFT/$RELPATH" "$RIGHT/$RELPATH"
done
;;
*)
echo "invalid command ($CMD)"
;;
esac