From b02b6af1183d19037536a42c6683b58defd4ccab Mon Sep 17 00:00:00 2001 From: jjenista Date: Tue, 5 Oct 2010 18:27:04 +0000 Subject: [PATCH] fix bugs to run without pool allocation like the ppopp paper experiments --- .../src/Benchmarks/oooJava/barneshut/makefile | 30 ++++++++++++--- Robust/src/Benchmarks/oooJava/crypt/makefile | 30 ++++++++++++--- Robust/src/Benchmarks/oooJava/kmeans/makefile | 38 +++++++++++++------ Robust/src/Benchmarks/oooJava/kmeans/runp | 2 +- Robust/src/Benchmarks/oooJava/kmeans/runs | 2 +- .../src/Benchmarks/oooJava/labyrinth/makefile | 38 +++++++++++++------ .../src/Benchmarks/oooJava/mergesort/makefile | 30 ++++++++++++--- Robust/src/Benchmarks/oooJava/monte/makefile | 30 ++++++++++++--- Robust/src/Benchmarks/oooJava/power/makefile | 30 ++++++++++++--- .../src/Benchmarks/oooJava/raytracer/makefile | 30 ++++++++++++--- Robust/src/Benchmarks/oooJava/sor/makefile | 30 +++++++++++---- .../src/Benchmarks/oooJava/tracking/makefile | 32 ++++++++++++---- Robust/src/IR/Flat/BuildCode.java | 27 +++++++++---- 13 files changed, 266 insertions(+), 83 deletions(-) diff --git a/Robust/src/Benchmarks/oooJava/barneshut/makefile b/Robust/src/Benchmarks/oooJava/barneshut/makefile index 1a2f1e4d..8350551b 100644 --- a/Robust/src/Benchmarks/oooJava/barneshut/makefile +++ b/Robust/src/Benchmarks/oooJava/barneshut/makefile @@ -1,24 +1,40 @@ PROGRAM=Barneshut SOURCE_FILES=Barneshut.java -#SOURCE_FILES=test.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize #-coreprof -coreprof-checkoverflow + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -30,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/crypt/makefile b/Robust/src/Benchmarks/oooJava/crypt/makefile index 9e86df7b..1e777ad9 100644 --- a/Robust/src/Benchmarks/oooJava/crypt/makefile +++ b/Robust/src/Benchmarks/oooJava/crypt/makefile @@ -4,21 +4,37 @@ SOURCE_FILES=JGFCryptBench.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -30,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/kmeans/makefile b/Robust/src/Benchmarks/oooJava/kmeans/makefile index ec00963b..3d03c798 100644 --- a/Robust/src/Benchmarks/oooJava/kmeans/makefile +++ b/Robust/src/Benchmarks/oooJava/kmeans/makefile @@ -1,32 +1,46 @@ -MAINCLASS=KMeans -PROGRAM=test +PROGRAM=KMeans BUILDSCRIPT=../../../buildscript -SOURCE_FILES=${MAINCLASS}.java \ +SOURCE_FILES=${PROGRAM}.java \ Random.java \ Cluster.java \ Normal.java \ Common.java \ GlobalArgs.java -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -garbagestats -64bit -mainclass $(MAINCLASS) -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) - + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: - rm *.bin + rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin rm -fr par sing rm -f *~ rm -f *.dot @@ -35,3 +49,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/kmeans/runp b/Robust/src/Benchmarks/oooJava/kmeans/runp index b8d92b29..3f8c2b8c 100755 --- a/Robust/src/Benchmarks/oooJava/kmeans/runp +++ b/Robust/src/Benchmarks/oooJava/kmeans/runp @@ -1 +1 @@ -./testp.bin -m 40 -n 40 -t 0.00001 -i inputs/random-n65536-d32-c16.txt -nthreads 1 +./KMeansp.bin -m 40 -n 40 -t 0.00001 -i inputs/random-n65536-d32-c16.txt -nthreads 1 diff --git a/Robust/src/Benchmarks/oooJava/kmeans/runs b/Robust/src/Benchmarks/oooJava/kmeans/runs index 2a482779..d502d58c 100755 --- a/Robust/src/Benchmarks/oooJava/kmeans/runs +++ b/Robust/src/Benchmarks/oooJava/kmeans/runs @@ -1 +1 @@ -./tests.bin -m 40 -n 40 -t 0.00001 -i inputs/random-n65536-d32-c16.txt -nthreads 1 +./KMeanss.bin -m 40 -n 40 -t 0.00001 -i inputs/random-n65536-d32-c16.txt -nthreads 1 diff --git a/Robust/src/Benchmarks/oooJava/labyrinth/makefile b/Robust/src/Benchmarks/oooJava/labyrinth/makefile index c3fa5dbd..4d3eb321 100644 --- a/Robust/src/Benchmarks/oooJava/labyrinth/makefile +++ b/Robust/src/Benchmarks/oooJava/labyrinth/makefile @@ -6,31 +6,43 @@ SOURCE_FILES2=Coordinate.java CoordPathWrapper.java Grid.java Labyrinth.java Lis BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -joptimize -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) singler: - $(BUILDSCRIPT) $(BSFLAGS) -o $(PROGRAM)s -builddir sing2 $(SOURCE_FILES2) + $(BUILDSCRIPT) $(BSFLAGS) -o $(PROGRAM)s -builddir sing2 $(SOURCE_FILES2) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) - -disjoint: - $(BUILDSCRIPT) -justanalyze $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) - + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: - rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin + rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin rm -fr par sing sing2 rm -f *~ rm -f *.dot @@ -39,3 +51,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/mergesort/makefile b/Robust/src/Benchmarks/oooJava/mergesort/makefile index 2cc128c0..180b7a2e 100644 --- a/Robust/src/Benchmarks/oooJava/mergesort/makefile +++ b/Robust/src/Benchmarks/oooJava/mergesort/makefile @@ -4,21 +4,37 @@ SOURCE_FILES=BMergeSort4.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 64 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -30,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/monte/makefile b/Robust/src/Benchmarks/oooJava/monte/makefile index 85e7cf09..2ce840df 100644 --- a/Robust/src/Benchmarks/oooJava/monte/makefile +++ b/Robust/src/Benchmarks/oooJava/monte/makefile @@ -4,21 +4,37 @@ SOURCE_FILES=JGFMonteCarloBench.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -30,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/power/makefile b/Robust/src/Benchmarks/oooJava/power/makefile index b6b6b6ac..0c33df07 100644 --- a/Robust/src/Benchmarks/oooJava/power/makefile +++ b/Robust/src/Benchmarks/oooJava/power/makefile @@ -3,21 +3,37 @@ SOURCE_FILES=$(PROGRAM).java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -29,3 +45,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/raytracer/makefile b/Robust/src/Benchmarks/oooJava/raytracer/makefile index f121d824..baed9758 100644 --- a/Robust/src/Benchmarks/oooJava/raytracer/makefile +++ b/Robust/src/Benchmarks/oooJava/raytracer/makefile @@ -4,21 +4,37 @@ SOURCE_FILES=test.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -30,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/sor/makefile b/Robust/src/Benchmarks/oooJava/sor/makefile index 79961d5b..a995ca8e 100644 --- a/Robust/src/Benchmarks/oooJava/sor/makefile +++ b/Robust/src/Benchmarks/oooJava/sor/makefile @@ -4,23 +4,37 @@ SOURCE_FILES=JGFSORBenchSizeD.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 6*1024 -garbagestats -debug -joptimize -noloop -optimize #-ooodebug-disable-task-mem-pool -#-coreprof -coreprof-eventwords 1024*1024*128 #-coreprof-checkoverflow +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -32,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/Benchmarks/oooJava/tracking/makefile b/Robust/src/Benchmarks/oooJava/tracking/makefile index 41822a95..f511214f 100644 --- a/Robust/src/Benchmarks/oooJava/tracking/makefile +++ b/Robust/src/Benchmarks/oooJava/tracking/makefile @@ -4,23 +4,37 @@ SOURCE_FILES=TrackingBench.java BUILDSCRIPT=../../../buildscript -USEOOO= -ooojava 24 2 -ooodebug -BSFLAGS= -64bit -mainclass $(PROGRAM) -garbagestats -joptimize -noloop -optimize -#USEOOO= -ooojava 8 2 -ooodebug -#BSFLAGS= -64bit -nooptimize -mainclass $(PROGRAM) -debug -garbagestats -joptimize -noloop + +COREPROFOVERFLOW= #-coreprof-checkoverflow +USECOREPROF= -coreprof $(COREPROFOVERFLOW) \ + -coreprof-eventwords 1024*1024*128 \ + -coreprof-enable cpe_main \ + -coreprof-enable cpe_taskdispatch +# -coreprof-enable cpe_runmalloc \ +# -coreprof-enable cpe_runfree \ +# -coreprof-enable cpe_count_poolalloc \ +# -coreprof-enable cpe_count_poolreuse \ +# -coreprof-enable cpe_workschedgrab \ +# -coreprof-enable cpe_taskexecute \ +# -coreprof-enable cpe_taskretire \ +# -coreprof-enable cpe_taskstallvar \ +# -coreprof-enable cpe_taskstallmem + + +USEOOO= -ooojava 24 2 -ooodebug -ooodebug-disable-task-mem-pool +BSFLAGS= -64bit -mainclass $(PROGRAM) -heapsize-mb 1024 -garbagestats -debug -joptimize -noloop -optimize DRELEASEMODE=-disjoint-release-mode -disjoint-alias-file aliases.txt tabbed DISJOINT= -disjoint -disjoint-k 1 -enable-assertions $(DRELEASEMODE) #-disjoint-desire-determinism - default: - $(BUILDSCRIPT) -nojava $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p $(SOURCE_FILES) -builddir par + $(BUILDSCRIPT) -nojava $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) single: - $(BUILDSCRIPT) $(BSFLAGS) -thread -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) + $(BUILDSCRIPT) -thread $(BSFLAGS) $(USECOREPROF) -o $(PROGRAM)s -builddir sing $(SOURCE_FILES) ooo: - $(BUILDSCRIPT) $(USEOOO) $(BSFLAGS) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) + $(BUILDSCRIPT) $(BSFLAGS) $(USECOREPROF) $(USEOOO) $(DISJOINT) -o $(PROGRAM)p -builddir par $(SOURCE_FILES) clean: rm -f $(PROGRAM)p.bin $(PROGRAM)s.bin @@ -32,3 +46,5 @@ clean: rm -f aliases.txt rm -f mlpReport*txt rm -f results*txt + rm -f coreprof.dat + rm -f trace.out diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index 1bbfb69c..4094df3f 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -2327,7 +2327,7 @@ public class BuildCode { // make it clear we purposefully did not initialize this output.println(" runningSESE->taskRecordMemPool = (MemPool*)0x1;"); } - output.println( "#endif" ); + output.println( "#endif // OOO_DISABLE_TASKMEMPOOL" ); // copy in-set into place, ready vars were already @@ -2350,10 +2350,12 @@ public class BuildCode { pairItr.hasNext(); ) { SESEandAgePair srcPair = pairItr.next(); + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" {"); output.println(" SESEcommon* src = &("+paramsprefix+"->"+srcPair+"->common);"); output.println(" RELEASE_REFERENCE_TO( src );"); output.println(" }"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); } @@ -2381,8 +2383,10 @@ public class BuildCode { paramsprefix+"->"+temp+"_srcSESE + "+ paramsprefix+"->"+temp+"_srcOffset));"); + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" SESEcommon* src = "+paramsprefix+"->"+temp+"_srcSESE;"); output.println(" RELEASE_REFERENCE_TO( src );"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); // or if the source was our parent, its already in our record to grab output.println(" } else {"); @@ -2980,6 +2984,7 @@ public class BuildCode { // this variable pointed to, do release last in case we're just // copying the same value in because 1->2->1 is safe but ref count // 1->0->1 has a window where it looks like it should be free'd + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" if( "+rhs+"_srcSESE != NULL ) {"); output.println(" ADD_REFERENCE_TO( "+rhs+"_srcSESE );"); output.println(" }"); @@ -2987,6 +2992,7 @@ public class BuildCode { output.println(" RELEASE_REFERENCE_TO( oldSrc );"); output.println(" }"); output.println(" }"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); } // for each lhs that is dynamic from a non-dynamic source, set the @@ -2997,9 +3003,11 @@ public class BuildCode { assert currentSESE.getDynamicVarSet().contains( dynVar ); // first release a reference to current record + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" if( "+dynVar+"_srcSESE != NULL ) {"); output.println(" RELEASE_REFERENCE_TO( oldSrc );"); output.println(" }"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); output.println(" "+dynVar+"_srcSESE = NULL;"); } @@ -3676,12 +3684,12 @@ public class BuildCode { fsen.getSESErecordName()+"*) mlpAllocSESErecord( sizeof( "+ fsen.getSESErecordName()+" ) );"); } - output.println( "#else" ); + output.println( "#else // OOO_DISABLE_TASKMEMPOOL" ); output.println(" "+ fsen.getSESErecordName()+"* seseToIssue = ("+ fsen.getSESErecordName()+"*) mlpAllocSESErecord( sizeof( "+ fsen.getSESErecordName()+" ) );"); - output.println( "#endif" ); + output.println( "#endif // OOO_DISABLE_TASKMEMPOOL" ); // set up the SESE in-set and out-set objects, which look @@ -3869,9 +3877,11 @@ public class BuildCode { // no need to add a reference to whatever is the newest record, because // we initialized seseToIssue->refCount to *2* // but release a reference to whatever was the oldest BEFORE the shift + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" if( "+pairOldest+" != NULL ) {"); output.println(" RELEASE_REFERENCE_TO( "+pairOldest+" );"); output.println(" }"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); @@ -4341,8 +4351,8 @@ public class BuildCode { // a task has variables to track static/dynamic instances // that serve as sources, release the parent's ref of each // non-null var of these types - output.println(" // releasing static SESEs"); + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); Iterator pItr = fsen.getNeededStaticNames().iterator(); while( pItr.hasNext() ) { SESEandAgePair pair = pItr.next(); @@ -4358,13 +4368,11 @@ public class BuildCode { output.println(" RELEASE_REFERENCE_TO( "+dynSrcVar+"_srcSESE );"); output.println(" }"); } - // destroy this task's mempool if it is not a leaf task if( !fsen.getIsLeafSESE() ) { - output.println( "#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" pooldestroy( runningSESE->taskRecordMemPool );"); - output.println( "#endif" ); } + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); // if this is not the Main sese (which has no parent) then return @@ -4373,7 +4381,9 @@ public class BuildCode { if( (state.MLP && fsen != mlpa.getMainSESE()) || (state.OOOJAVA && fsen != oooa.getMainSESE()) ) { + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" RELEASE_REFERENCE_TO( runningSESE );"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); } else { // the main task has no parent, just free its record output.println(" mlpFreeSESErecord( runningSESE );"); @@ -4431,12 +4441,15 @@ public class BuildCode { // this variable pointed to, do release last in case we're just // copying the same value in because 1->2->1 is safe but ref count // 1->0->1 has a window where it looks like it should be free'd + output.println("#ifndef OOO_DISABLE_TASKMEMPOOL" ); output.println(" if( "+refVar+"_srcSESE != NULL ) {"); output.println(" ADD_REFERENCE_TO( "+refVar+"_srcSESE );"); output.println(" }"); output.println(" if( oldSrc != NULL ) {"); output.println(" RELEASE_REFERENCE_TO( oldSrc );"); output.println(" }"); + output.println("#endif // OOO_DISABLE_TASKMEMPOOL" ); + output.println(" }"); } } -- 2.34.1