Index: doc/theses/colby_parsons_MMAth/benchmarks/waituntil/run
===================================================================
--- doc/theses/colby_parsons_MMAth/benchmarks/waituntil/run	(revision 6c121eed6f4c0f793dca1e69b669f683bcfdfe3e)
+++ doc/theses/colby_parsons_MMAth/benchmarks/waituntil/run	(revision f77f648d08a135ea128b36cc3986a090e5c3c9f6)
@@ -94,4 +94,5 @@
 
 chan_size='10'
+future_time='10'
 
 # toggle benchmarks
@@ -99,12 +100,16 @@
 contend=${true}
 sidechan=${true}
-# spin=${false}
-# contend=${false}
-# sidechan=${false}
+future=${true}
+spin=${false}
+contend=${false}
+sidechan=${false}
+# future=${false}
 
 runCFA=${true}
 runGO=${true}
+runUCPP=${true}
 # runCFA=${false}
-# runGO=${false}
+runGO=${false}
+# runUCPP=${false}
 
 cfa=~/cfa-cc/driver/cfa
@@ -158,4 +163,13 @@
 }
 
+run_future() {
+    for p in ${num_threads} ; do
+        pre_args=$(( ${p} - 1 ))
+        affinity ${p}
+        preprint="${p}\t"
+        repeat_command taskset -c ${taskset} ./a.${hostname} ${pre_args} ${post_args}
+    done
+}
+
 arch # get hostname
 
@@ -177,4 +191,8 @@
 # cfa flags
 cfa_flags='-quiet -O3 -nodebug -DNDEBUG'
+
+# UCPP flags
+UCPPflags="-quiet -g -Wall -Wextra -O3 -nodebug -DNDEBUG -multi"
+UCPP=~/ucpp/u++-7.0.0/bin/u++
 
 # run the benchmarks
@@ -243,2 +261,24 @@
 fi
 
+if [ ${future} -eq ${true} ] ; then
+    echo "future: "
+    post_args=${future_time}
+    if [ ${runCFA} -eq ${true} ] ; then
+        cd cfa # CFA RUN
+        print_header 'CFA'
+        ${cfa} ${cfa_flags} future.cfa -o a.${hostname} > /dev/null 2>&1
+        run_future
+        rm a.${hostname}
+        cd - > /dev/null
+    fi # done CFA
+
+    if [ ${runUCPP} -eq ${true} ] ; then
+        cd ucpp
+        print_header 'uC++'
+        ${UCPP} ${UCPPflags} future.cc -o a.${hostname} > /dev/null 2>&1
+        run_future
+        rm a.${hostname}
+        cd - > /dev/null
+    fi # done Go
+fi
+
