A Preliminary Evaluation of FINESSE , a Feedback-Guided Performance Enhancement System

Automatic parallelisation tools implement sophisticated tactics for analysing and transforming application codes but, typically, their "one-step" strategy for finding a "good" parallel implementation remains naive. In contrast, successful experts at parallelisation explore interesting parts of the space of possible implementations. FINESSE is an environment which supports this exploration by automating many of the tedious steps associated with experiment planning and execution and with the analysis of performance. FINESSE also harnesses the sophisticated techniques provided by automatic compilation tools to provide feedback to the user which can be used to guide the exploration. This paper briefly describes FINESSE and presents evidence for its effectiveness. The latter has been gathered from the experiences of a small number of users, both expert and non-expert, during their parallelisation efforts on a set of compute-intensive, kernel test codes. The evidence lends support to the hypothesis that users of FINESSE can find implementations that achieve performance comparable with that achieved by expert programmers, but in a shorter time.