The execution of an application on a high performance system requires parameters concerning the problem in hand, and those that determine the system mapping, to be specified by a user. The system parameters are typically used to minimise the execution time. However, by the coupling of a performance model with an application, system parameters can be determined without user intervention. In the work presented here, a novel performance prediction system has been used to provide suitable performance models which can determine application mapping parameters, code execution decisions, and system choices on-the-fly. An example compact application of a convolution is used to illustrate the approach for automatically choosing the actual code to be executed, and the number of workstations in a cluster to be utilised. The performance prediction system is shown to have a reasonable accuracy (approximately 10% error), with a rapid evaluation time (typically < 2s).
Darren J. Kerbyson, Efstathios Papaefstathiou, Gra