The current version of the UC compiler produces exclusively deterministic
communication patterns. Hence, the simulator applies the optimization
described earlier
to all communication generated by the compiler. For
a number of small programs, we verified that the actual program execution
(N, according to the terminology introduced earlier) and
the simulations (
, for a number of k<N) gave the same
output. We also compared predicted and actual execution times
for a number of programs. Figure 3.1 shows the accuracy
of the prediction for Gauss-Jordan Elimination. The curve
labeled "Real Execution" shows the execution time of N for
N=4,8,16. The curves labeled "k Processor Simulation" are
the execution times of
for N=4,8,16. All curves
are in close agreement i.e. at all points each simulation is
within 5.5% of the actual execution time and all simulations are
within 4.89% of each other.
Figure 3.1: Simulator Accuracy