/InterDiff

Quantifies changes of thread interleaving in different execution of a multithreaded program

Primary LanguageC++

This tool quantifies changes of thread interleaving in different execution of a multithreaded program.
-Run a program for N times in this tool,
-It estimates the difference of thread interleaving between each pair of executions,
-Estimation is based on differences in the total number of RAW dependences between pair of threads.

Make:
1. Set PIN_HOME, PIN_KIT in makefile.gnu.config


RUN: e.g PARSEC programs
1. In conf folder create config file where first line contains the number of threads
2. set PIN_HOME & BENCHMARK_DIR & BIN_DIR in run_parsec.sh
3. run_parsec.sh  program.name small/test total.executions.no [config.file.name]

OUTPUT: 
- uses standard output
- Average(per thread) estimate of change in RAW dependence due to change in thread interleaving between two execution [i,j]
where i,j are execution numbers assined uniquely for distinct execution.
shown as RESULT (i,j) in output