#!/bin/csh -f
# This script runs gbas on Arborg5 -otl on an Encore Multimax.
# It runs it twice each with 1, 2, 5, and 10 worker threads.  We run each test
# using "normal" gbas and "gc-ing" gbas.  "Normal" gbas gets as many
# processors as workers; "gc-ing" gets one more processor for the GC task.
# With one worker, we also run the GC'ing example with just 1 processor.
# Each test is run with PML 0 and PML 2.  Finally, we test allocation rates
# for each of worker number.
#
# The measurements are saved to a file.

set gbas_c = /usr/emc/grobner/bin/gbas_p
set gbas_gc = /usr/dld/GC/testing/grobner/bin/gbas_p
set gbas_gc_pml3 = /usr/dld/GC/testing/grobner/bin/gbas_p.pml3

echo "==================================================" >! gbas.log
echo "All tests are on the Arnborg5 -otl example." >> gbas.log
echo "" >> gbas.log
#echo "1 WORKER EXAMPLES" >> gbas.log
#echo "C-gbas, 1 worker" >> gbas.log
#$gbas_c -w1 -otl < Arnborg5 > Arnborg5.c-gbas.out
#$gbas_c -v0 -w1 -otl < Arnborg5	>>& gbas.log

setenv GC_HEAP_SIZE 12288
setenv PERF_MEAS_LEVEL 3
setenv GC_N_PROCS 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, big heap (12 Meg)" >> gbas.log
($gbas_gc -v0 -w1001 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log

unsetenv GC_HEAP_SIZE
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, 1 processor (A1)" >> gbas.log
($gbas_gc -v0 -w1001 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 1 processor (A2)" >> gbas.log
#($gbas_gc -v0 -w1001 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, 1 processor (B1)" >> gbas.log
($gbas_gc -v0 -w1001 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 1 processor (B2)" >> gbas.log
#($gbas_gc -v0 -w1001 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
unsetenv GC_N_PROCS


setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
unsetenv GC_N_PROCS
echo "GC-gbas, 1 worker, 2 processors (A1)" >> gbas.log
($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 2 processors (A2)" >> gbas.log
#($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, 2 processors (B1)" >> gbas.log
($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 2 processors (B2)" >> gbas.log
#($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log

setenv GC_HEAP_SIZE 4096
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, 2 processors, 4 Meg (A1)" >> gbas.log
($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 2 processors, 4 Meg (A2)" >> gbas.log
#($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 1 worker, 2 processors, 4 Meg (B1)" >> gbas.log
($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 1 worker, 2 processors, 4 Meg (B2)" >> gbas.log
#($gbas_gc -v0 -w1 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log


echo "==================================================" >> gbas.log
echo "2 WORKER TESTS" >> gbas.log
#echo "C-gbas, 2 workers (1)" >> gbas.log
#$gbas_c -v0 -w2 -otl < Arnborg5 >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "C-gbas, 2 workers (2)" >> gbas.log
#$gbas_c -v0 -w2 -otl < Arnborg5 >>& gbas.log
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 2 workers, 12 Meg" >> gbas.log
setenv GC_HEAP_SIZE 12288
($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log


unsetenv GC_HEAP_SIZE
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 2 workers, 3 processors (A1)" >> gbas.log
($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 2 workers, 3 processors (A2)" >> gbas.log
#($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 2 workers, 3 processors (B1)" >> gbas.log
($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 2 workers, 3 processors (B2)" >> gbas.log
#($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log


setenv GC_HEAP_SIZE 4096
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 2 workers, 3 processors, 4 Meg (A1)" >> gbas.log
($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 2 workers, 3 processors, 4 Meg (A2)" >> gbas.log
#($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 2 workers, 3 processors, 4 Meg (B1)" >> gbas.log
($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 2 workers, 3 processors, 4 Meg (B2)" >> gbas.log
#($gbas_gc -v0 -w2 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log

echo "==================================================" >> gbas.log
echo "5 WORKER TESTS" >> gbas.log
echo "C-gbas, 5 workers (1)" >> gbas.log
$gbas_c -v0 -w5 -otl < Arnborg5 >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "C-gbas, 5 workers (2)" >> gbas.log
#$gbas_c -v0 -w5 -otl < Arnborg5 >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 5 workers, 12 Meg" >> gbas.log
setenv GC_HEAP_SIZE 12288
($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log


unsetenv GC_HEAP_SIZE
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 5 workers, 6 processors (A1)" >> gbas.log
($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 5 workers, 6 processors (A2)" >> gbas.log
#($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 5 workers, 6 processors (B1)" >> gbas.log
($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 5 workers, 6 processors (B2)" >> gbas.log
#($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log


setenv GC_HEAP_SIZE 4096
setenv PERF_MEAS_LEVEL 3
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 5 workers, 6 processors, 4 Meg (A1)" >> gbas.log
($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 5 workers, 6 processors, 4 Meg (A2)" >> gbas.log
#($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
setenv PERF_MEAS_LEVEL 1
echo "---------------------------------------------" >> gbas.log
echo "GC-gbas, 5 workers, 6 processors, 4 Meg (B1)" >> gbas.log
($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#echo "---------------------------------------------" >> gbas.log
#echo "GC-gbas, 5 workers, 6 processors, 4 Meg (B2)" >> gbas.log
#($gbas_gc -v0 -w5 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log

#  echo "==================================================" >> gbas.log
#  echo "10 WORKER TESTS" >> gbas.log
#  echo "C-gbas, 10 workers (1)" >> gbas.log
#  $gbas_c -v0 -w10 -otl < Arnborg5 >>& gbas.log
#  #echo "---------------------------------------------" >> gbas.log
#  #echo "C-gbas, 10 workers (2)" >> gbas.log
#  #$gbas_c -v0 -w10 -otl < Arnborg5 >>& gbas.log
#  echo "---------------------------------------------" >> gbas.log
#  echo "GC-gbas, 10 workers, 12 Meg" >> gbas.log
#  setenv GC_HEAP_SIZE 12288
#  ($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  
#  
#  unsetenv GC_HEAP_SIZE
#  setenv PERF_MEAS_LEVEL 3
#  echo "---------------------------------------------" >> gbas.log
#  echo "GC-gbas, 10 workers, 11 processors (A1)" >> gbas.log
#  ($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  #echo "---------------------------------------------" >> gbas.log
#  #echo "GC-gbas, 10 workers, 11 processors (A2)" >> gbas.log
#  #($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  #setenv PERF_MEAS_LEVEL 1
#  echo "---------------------------------------------" >> gbas.log
#  echo "GC-gbas, 10 workers, 11 processors (B1)" >> gbas.log
#  ($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  #echo "---------------------------------------------" >> gbas.log
#  #echo "GC-gbas, 10 workers, 11 processors (B2)" >> gbas.log
#  #($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  
#  
#  setenv GC_HEAP_SIZE 4096
#  setenv PERF_MEAS_LEVEL 3
#  echo "---------------------------------------------" >> gbas.log
#  echo "GC-gbas, 10 workers, 11 processors, 4 Meg (A1)" >> gbas.log
#  ($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  #echo "---------------------------------------------" >> gbas.log
#  #echo "GC-gbas, 10 workers, 11 processors, 4 Meg (A2)" >> gbas.log
#  #($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  setenv PERF_MEAS_LEVEL 1
#  echo "---------------------------------------------" >> gbas.log
#  echo "GC-gbas, 10 workers, 11 processors, 4 Meg (B1)" >> gbas.log
#  ($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
#  #echo "---------------------------------------------" >> gbas.log
#  #echo "GC-gbas, 10 workers, 11 processors, 4 Meg (B2)" >> gbas.log
#  #($gbas_gc -v0 -w10 -otl < Arnborg5 >! Arnborg5.gbas-gc.out2) >>& gbas.log
