./extractLines
../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPNC ${SRC}
../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPC ${SRC}
-# ../../../../buildscript ${FLAGS3} -o ${MAINCLASS}N ${SRC}
+ ../../../../buildscript ${FLAGS3} -o ${MAINCLASS}N ${SRC}
clean:
rm tmp1RainForest.java
#define ROW 100 /* columns in the map */
#define COLUMN 100 /* rows of in the map */
-#define ROUNDS 200 /* Number of moves by each player */
+#define ROUNDS 256 /* Number of moves by each player */
#define PLAYERS 20 /* Number of Players when num Players != num of client machines */
#define RATI0 0.5 /* Number of lumberjacks to number of planters */
#define BLOCK 3 /* Area around the gamer to consider */
# ../../../../buildscript ${FLAGS} ${SRC1} -o ${MAINCLASS}N
../../../../buildscript ${FLAGS1} ${SRC2} -o ${MAINCLASS}NPNC
../../../../buildscript ${FLAGS2} ${SRC2} -o ${MAINCLASS}NPC
-# ../../../../buildscript ${FLAGS} ${SRC2} -o ${MAINCLASS}N
+ ../../../../buildscript ${FLAGS} ${SRC2} -o ${MAINCLASS}N
clean:
rm -rf tmpbuilddirectory
default:
../../../../buildscript ${FLAGS1} ${SRC} -o ${MAINCLASS}NPNC
../../../../buildscript ${FLAGS2} ${SRC} -o ${MAINCLASS}NPC
-# ../../../../buildscript ${FLAGS} ${SRC} -o ${MAINCLASS}N
+ ../../../../buildscript ${FLAGS} ${SRC} -o ${MAINCLASS}N
clean:
rm -rf tmpbuilddirectory
default:
../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC1}
../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC1}
-# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1}
+ ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC1}
# ../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC200 ${SRC2}
# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N200 ${SRC2}
}
JGFInstrumentor instr = new JGFInstrumentor();
- JGFInstrumentor.printHeader(3,0,nthreads);
+ JGFInstrumentor.printHeader(3,1,nthreads);
JGFMolDynBench mold;
atomic {
-MAINCLASS=JGFMolDynBenchSizeC
+MAINCLASS=JGFMolDynBenchSizeB
SRC=${MAINCLASS}.java \
JGFInstrumentor.java \
JGFTimer.java \
IntWrapper.java \
MDWrap.java \
../../../../ClassLibrary/JavaDSM/Barrier.java
-FLAGS=-dsm -dsmcaching -prefetch -optimize -excprefetch particle.force -excprefetch particle.domove -excprefetch particle.mkekin -excprefetch TournamentBarrier.DoBarrier -excprefetch JGFMolDynBench.JGFvalidate -excprefetch JGFMolDynBench.JGFapplication -excprefetch JGFMolDynBench.JGFinitialise -excprefetch mdRunner.init -mainclass ${MAINCLASS} -trueprob 0.75
+FLAGS=-dsm -dsmcaching -prefetch -optimize -excprefetch particle.force -excprefetch particle.domove -excprefetch particle.mkekin -excprefetch TournamentBarrier.DoBarrier -excprefetch JGFMolDynBench.JGFvalidate -excprefetch JGFMolDynBench.JGFapplication -excprefetch JGFMolDynBench.JGFinitialise -excprefetch mdRunner.init -excprefetch mdRunner.doinit -excprefetch mdRunner.doinit2 -mainclass ${MAINCLASS} -trueprob 0.75
+#FLAGS=-dsm -dsmcaching -prefetch -optimize -excprefetch particle.force -excprefetch particle.domove -excprefetch particle.mkekin -excprefetch TournamentBarrier.DoBarrier -excprefetch JGFMolDynBench.JGFvalidate -excprefetch JGFMolDynBench.JGFapplication -excprefetch JGFMolDynBench.JGFinitialise -excprefetch mdRunner.init -mainclass ${MAINCLASS} -trueprob 0.75
FLAGS2=-dsm -optimize -mainclass ${MAINCLASS}
FLAGS1=-dsm -dsmcaching -optimize -mainclass ${MAINCLASS} -trueprob 0.75
default:
../../../../buildscript ${FLAGS2} -o ${MAINCLASS}NPNC ${SRC}
../../../../buildscript ${FLAGS1} -o ${MAINCLASS}NPC ${SRC}
-# ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC}
+ ../../../../buildscript ${FLAGS} -o ${MAINCLASS}N ${SRC}
clean:
rm -rf tmpbuilddirectory/
}
JGFInstrumentor instr = new JGFInstrumentor();
- JGFInstrumentor.printHeader(3,0,nthreads);
+ JGFInstrumentor.printHeader(3,1,nthreads);
JGFMolDynBench mold;
mold = new JGFMolDynBench(nthreads);
-MAINCLASS=JGFMolDynBenchSizeC
+MAINCLASS=JGFMolDynBenchSizeB
SRC=${MAINCLASS}.java \
JGFInstrumentor.java \
JGFTimer.java \
//#define RETRYINTERVAL 20 //N (For Em3d, SOR, Moldyn benchmarks)
//#define SHUTDOWNINTERVAL 3 //M
#define RETRYINTERVAL 100 //N (For MatrixMultiply, 2DFFT benchmarks)
-#define SHUTDOWNINTERVAL 1 //M
+#define SHUTDOWNINTERVAL 1 //M
#include <stdlib.h>
#include <stdio.h>
/*******Global statistics *********/
extern int numprefetchsites;
+/***********************************
+ * Global Variables for statistics
+ **********************************/
+#ifdef TRANSSTATS
+extern int numTransCommit;
+extern int numTransAbort;
+extern int nSoftAbort;
+extern int nSoftAbortAbort;
+extern int nSoftAbortCommit;
+#endif
+
double idForTimeDelay; /* TODO Remove, necessary to get time delay for starting transRequest for this id */
int transCount; /* TODO Remove, necessary to the transaction id */
extern int bytesRecv;
extern int totalObjSize;
extern unsigned int myIpAddr;
+extern int getResponse;
+extern int sendRemoteReq;
void handle();
extern pfcstats_t *evalPrefetch;
+/*
void transStatsHandler(int sig, siginfo_t* info, void *context) {
#ifdef TRANSSTATS
FILE *fp;
exit(0);
#endif
}
+*/
+
+void transStatsHandler(int sig, siginfo_t* info, void *context) {
+#ifdef TRANSSTATS
+ printf("****** Transaction Stats ******\n");
+ printf("myIpAddr = %x\n", myIpAddr);
+ printf("numTransAbort = %d\n", numTransAbort);
+ printf("numTransCommit = %d\n", numTransCommit);
+ printf("nchashSearch = %d\n", nchashSearch);
+ printf("nmhashSearch = %d\n", nmhashSearch);
+ printf("nprehashSearch = %d\n", nprehashSearch);
+ printf("nRemoteReadSend = %d\n", nRemoteSend);
+ printf("nSoftAbort = %d\n", nSoftAbort);
+ printf("bytesSent = %d\n", bytesSent);
+ printf("bytesRecv = %d\n", bytesRecv);
+ printf("totalObjSize= %d\n", totalObjSize);
+ printf("sendRemoteReq= %d\n", sendRemoteReq);
+ printf("getResponse= %d\n", getResponse);
+ printf("**********************************\n");
+ exit(0);
+#endif
+}
void handle() {
#ifdef TRANSSTATS
int bytesSent = 0;
int bytesRecv = 0;
int totalObjSize = 0;
+int sendRemoteReq = 0;
+int getResponse = 0;
void printhex(unsigned char *, int);
plistnode_t *createPiles();
*((int*)buf) = tmp->numoffset;
buf+=sizeof(int);
*((unsigned int *)buf) = tmp->oid;
+#ifdef TRANSSTATS
+ sendRemoteReq++;
+#endif
buf+=sizeof(unsigned int);
*((unsigned int *)buf) = myIpAddr;
buf += sizeof(unsigned int);
recv_data((int)sd, &length, sizeof(int));
size = length - sizeof(int);
char recvbuffer[size];
-
+#ifdef TRANSSTATS
+ getResponse++;
+#endif
recv_data((int)sd, recvbuffer, size);
control = *((char *) recvbuffer);
if(control == OBJECT_FOUND) {