I want to know the names and links to the simulators/softwares for different dependence testing (to understand the dependence nature in the code) on any compiler. It will be good if they are windows supported.
Deepti, if I understand your question correctly, you are asking for a tool that shows the dependencies within the compiler - or are you looking for something that will show the dependencies that source code (to be compiled by the compiler) have?
Compiler dependencies are usually libraries used to link. If you are building a compiler from source (like gcc), there are multiple system libraries that you need to have installed/compiled before you can do the compiler itself. If, you are asking about code dependencies (missing include files or libraries), 'make depend' - http://mad-scientist.net/make/autodep.html
Ok. I think I have a better understanding of what you're talking about now. If you have a loop (as you've mentioned), you would like to parallelize the loop execution - but need to know which variables (if any) will be accessed by each of the loops being executed in parallel.
Example (phony code, used as clarification purposes):
#pragma omp threadprivate result, alpha, beta
#pragma omp for
for (i=0; i < 10; i++) {
result[i] = alpha[i] * beta[i];
cxx = cxx + result[i];
}
In the example, variables result, alpha, and beta are isolated and usable in each thread simultaneously as you are referencing a different entry into each array. note that the variable cxx is where the problem occurs because you don't know what order the result array entries will be added in - or which value of cxx will be added to each time.
You might find this of interest - http://www.slideshare.net/TanyaZaxarova/openmp-and-static-code-analysis