Control Points for Adaptive Parallel Performance Tuning

PPL Paper Number: 08-14
PPL CVS: papers/2008_control_points

Authors:
Isaac Dooley and Laxmikant V. Kale
Parallel Programming Laboratory, Department of Computer Science, University of Illinois at Urbana-Champaign

PPL Technical Report 2008


Abstract

This paper describes a new parallel program tuning framework, with a new approach for tuning. The application exposes tuning parameters while an adaptive runtime system tunes the values of the parameters as the program executes. The parameters are allowed to vary throughout the duration of a run of a program. This provides two benefits over using a static set of parameters for each program run. The first is that parameters affecting performance may need to vary throughout the program run to achieve maximum performance. The second benefit is that many parameter configurations can be tested in a single run of an application. This approach amortizes the cost of startup across many evaluations of configurations in the parameter space. The framework can tune parameters across multiple modules in a parallel application. It can collectively optimize the parameters, called Control Points, exposed by the application, the runtime system, and libraries. This paper describes preliminary work using Control Points with two programs, a finite difference scheme, and a pipelined filtering application. Results from an exhaustive search of the configuration space are provided as a basis for determining which types of search strategies would be effective. The optimal configurations for control points vary between different parallel systems.


[PDF] [bibtex] [text reference] [presentation]