The simulator requires a number of steps to run before producing
the timecharts.The first step is to modify the exisiting MPI_Isend
and MPI_Irecv calls to use the simulator calls. 'sim-mpi.c'
and 'sim-mpi.h' should be compiled together with the mpi code.
The MPI_Isend and MPI_Irecv calls should be modified to use
SIM_Isend and SIM_Irecv calls respectively. SIM_Isend and SIM_Irecv
uses the same inital parameters as MPI_Isend and MPI_Irecv with
an additional parameter of time which is a struct tv value.
This value is the time in which the function is called. What
SIM_Isend and SIM_Irecv does is it produces a list of tags which
should be piped into a file and sent to the diagramming tools.
Example: 'mpirun -c 8 my-modified-program.exe > tag-output.txt'.
The next step is to use the list of tags to produce simulated
diagrams. Both simulus and simulus2 can produce the timecharts.
simulus produces the simulated timechart whereas simulus2 produces
the measured timecharts. Both programs read in a number of values.
They are:
Both simulus programs produce a .fig file output. For simulus,
The .fig file consists of debugging code and this has to be
removed. Enter the .fig file produced and remove the code before
the dotted line. For simulus2, this is not necessary. Both programs
generate .sim files from the tag list. This is used for debugging
and should be removed if the programs are to run again or to
use new data.