#ifdef GC_CACHE_ADAPT
// sampling unit to compute access frequency, this should be consistent all the
// time.
-#define GC_CACHE_SAMPLING_UNIT 0x1000000
+#define GC_CACHE_SAMPLING_UNIT 0x800000000
// freqeuency to trigger timer interrupt
#define GC_TILE_TIMER_EVENT_SETTING 10000000
struct allocrecord allocationinfo;
#ifdef GC_CACHE_ADAPT
-volatile bool gccachestage;
// table recording the sampling data collected for cache adaption
unsigned int * gccachesamplingtbl;
unsigned int * gccachesamplingtbl_local;// for zeroing memory only
echo "-useprofile use profiling data for scheduling (should be used together with -raw)"
echo -printscheduling print out scheduling graphs
echo -printschedulesim print out scheduling simulator result graphs
+echo "-tilera_output_dir specify the output directory for the generated TILERA code"
echo "-tilera_bme generate tilera version binary for Bare Mental Environment (should be used together with -multicore"
echo "-tilera_zlinux generate tilera version binary for Zero-Overhead Linux with multi-process mode (should be used together with -multicore"
echo "-tileraconfig config tilera simulator/pci as nxm (should be used together with -tilera)"
GCCORES=''
TILERAN1COREFLAG=false
TILERA56COREFLAG=false
+TILERAOUTPUTDIR=''
if [[ -z $1 ]]
then
then
RAWFLAG=true
JAVAOPTS="$JAVAOPTS -raw"
+elif [[ $1 = '-tilera_output_dir' ]]
+then
+TILERAOUTPUTDIR="$2"
+shift
elif [[ $1 = '-tilera_bme' ]]
then
TILERAFLAG=true
elif $TILERAFLAG
then # TILERAFLAG
-TILERADIR="$CURDIR/tilera"
+TILERADIR="$CURDIR/${TILERAOUTPUTDIR}"
if $TILERABMEFLAG
then # TILERABMEFLAG
TILERA_INDIR="BME"
cp ../$tmpbuilddirectory/*.c ./
cp ../$tmpbuilddirectory/*.h ./
-echo $TILERA_CFLAGS
+echo $TILERACFLAGS > ./tileracflags.txt
make