throw new Error("Joining thread on local object not allowed in context:\n"+currlb.getExplanation());
if(thistype.equals(CONFLICT))
throw new Error("Using type that can be either local or global in context:\n"+currlb.getExplanation());
- if(runmethodset==null&&thistype.equals(GLOBAL)&&!isatomic && !isjoin && executemethodset == null)
+ if(runmethodset==null&&thistype.equals(GLOBAL)&&!isatomic && !isjoin && executemethodset == null) {
throw new Error("Using global object outside of transaction in context:\n"+currlb.getExplanation());
+ }
if (runmethodset==null&&isnative&&thistype.equals(GLOBAL) && !isjoin && executemethodset == null && !isObjectgetType && !isObjecthashCode)
throw new Error("Potential call to native method "+md+" on global objects:\n"+currlb.getExplanation());
lb.setGlobalThis(thistype);
if (!(srctype.equals(GLOBAL)||srctype.equals(EITHER)))
throw new Error("Writing possible local reference to global field in context: \n"+lb.getExplanation());
} else {
- if (!(srctype.equals(LOCAL)||srctype.equals(EITHER)))
+ if (!(srctype.equals(LOCAL)||srctype.equals(EITHER))) {
throw new Error("Writing possible global reference to local object in context: \n"+lb.getExplanation());
+ }
}
} else if (dsttype.equals(GLOBAL)) {
if (!transaction)
Integer dsttype=currtable.get(fsen.getDst());
if (dsttype.equals(LOCAL)) {
- if (!(srctype.equals(LOCAL)||srctype.equals(EITHER)))
+ if (!(srctype.equals(LOCAL)||srctype.equals(EITHER))) {
throw new Error("Writing possible global reference to local object in context:\n"+lb.getExplanation()+fsen);
+ }
} else if (dsttype.equals(GLOBAL)) {
if (srctype.equals(LOCAL) && fsen.getDst().getType().dereference().isPrimitive() && !fsen.getDst().getType().dereference().isArray())
return;
SRC=${MAINCLASS}.java
SRC1=${MAINCLASS}SizeB.java
SRC2=${MAINCLASS}SizeC.java
-FLAGS =-dsm -transstats -dsmcaching -prefetch -optimize -excprefetch Image.initKernel -excprefetch Image.setValues -excprefetch Convolution.main -trueprob 0.98 -mainclass ${MAINCLASS}
+FLAGS =-dsm -dsmcaching -prefetch -optimize -excprefetch Image.initKernel -excprefetch Image.setValues -excprefetch Convolution.main -trueprob 0.95 -mainclass ${MAINCLASS}
FLAGS1=-dsm -optimize -mainclass ${MAINCLASS}
FLAGS2=-dsm -optimize -dsmcaching -mainclass ${MAINCLASS}
default:
../../../../buildscript ${FLAGS1} ${SRC} -o ${MAINCLASS}NPNC
- ../../../../buildscript ${FLAGS2} ${SRC} -o ${MAINCLASS}NPC
+# ../../../../buildscript ${FLAGS2} ${SRC} -o ${MAINCLASS}NPC
../../../../buildscript ${FLAGS} ${SRC} -o ${MAINCLASS}N
clean:
MAINCLASS=Chase
SRC1=${MAINCLASS}.java
-#FLAGS=-dsm -prefetch -dsmcaching -optimize -excprefetch Chase.main -excprefetch Chase.Chase -mainclass ${MAINCLASS} -trueprob 0.98
+FLAGS=-dsm -prefetch -dsmcaching -optimize -excprefetch Chase.main -excprefetch Chase.Chase -mainclass ${MAINCLASS} -trueprob 0.98
FLAGS2=-dsm -dsmcaching -optimize -mainclass ${MAINCLASS} -trueprob 0.99
FLAGS3=-dsm -optimize -mainclass ${MAINCLASS} -trueprob 0.99
#for testing no java option
#FLAGS=-dsm -prefetch -optimize -debug -excprefetch Chase.main -excprefetch Chase.Chase -mainclass ${MAINCLASS} -trueprob 0.99 -nojava
default:
../../../buildscript ${FLAGS3} -o ${MAINCLASS}NPNC ${SRC1}
- ../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPC ${SRC1}
+# ../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPC ${SRC1}
+ ../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1}
clean:
rm -rf tmpbuilddirectory
GlobalArgs.java \
../../../ClassLibrary/JavaDSM/Barrier.java
-FLAGSSTATS=-mainclass ${MAINCLASS} -dsm -optimize -debug -transstats
+FLAGS=-mainclass ${MAINCLASS} -dsm -optimize -transstats
+FLAGS1=-mainclass ${MAINCLASS} -dsm -dsmcaching -optimize -transstats
dsm:
- ../../../buildscript ${FLAGSSTATS} -o ${MAINCLASS} ${SRC}
+ ../../../buildscript ${FLAGS} -o ${MAINCLASS}NPNC ${SRC}
+ ../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC}
prep:
MAINCLASS=MatrixMultiply
SRC1=${MAINCLASS}N.java
+SRC2=MatrixMultiplyD3.java \
+ ../../../../ClassLibrary/JavaDSM/Barrier.java
FLAGS=-dsm -dsmcaching -prefetch -optimize -excprefetch MatrixMultiply.main -excprefetch MMul.setValues -excprefetch MMul.transpose -mainclass ${MAINCLASS} -trueprob 0.98
FLAGS1=-dsm -optimize -dsmcaching -mainclass ${MAINCLASS}
FLAGS2=-dsm -optimize -mainclass ${MAINCLASS}
-FLAGS3= -dsm -32bit -nooptimize -recovery -debug -mainclass ${MAINCLASS}
default:
- ../../../../buildscript ${FLAGS3} -o ${MAINCLASS} ${SRC1}
+ ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC2}
+# ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC2}
+ ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC2}
+# ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC200 ${SRC2}
+# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N200 ${SRC2}
clean:
rm -rf tmpbuilddirectory
default:
../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC}
- ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC}
+# ../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC}
../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC}
clean: