fupermod: Functional Performance Models of heterogeneous processors

Model builder

Builds full functional performance models over a range of problem sizes. May be run as a single process or in parallel. One model is output per MPI process. Uses Configuration of MPI process to set process specific parameters. If conf_file exists, it is used, otherwise a default machine file is created for the current set of MPI processes. This can be further modified by the user and the builder run again.

run $ ./builder -h for details of input parameters.

Requires a routine kernel to be given as input to benchmark.

Outline of programme:

   - Read config from conf_file (create if necessary)
     - open output file
     - Print header info from options & subopts
     - Loop over different problem sizes, using different methods.
     - - Initialise kernel
     - - loop over repetitions
     - - - start time
     - - - execute kernel
     - - - end time
     - - Finialise kernel
     - - Statistics on times, mean, student-t
     - - Print out times to file
     - End Loop
     - close file