PICS: A Performance-Analysis-Based Introspective Control System to Steer Parallel Applications
International Workshop on Runtime and Operating Systems for Supercomputers (ROSS) 2014
Publication Type: Paper
Repository URL:
Abstract
Parallel programming has always been difficult due to the complexity of
hardware and the diversity of applications. Although significant progress has
been achieved with the remarkable efforts of researchers in academia and
industry, attaining high parallel efficiency on large supercomputers with
millions of cores for various applications remains challenging.
Therefore, performance tuning has become even more important and challenging than
ever before. In this paper, we describe the design and implementation of
\emph{PICS}: Performance-analysis-based Introspective Control System, which is used to
tune parallel programs. PICS provides a generic set of abstractions to the
applications to expose the application-specific knowledge to the runtime
system. The abstractions are called \emph{control points}, which are tunable
parameters affecting application performance. The application behaviors
are observed, measured and automatically analyzed by the PICS. Based on the
analysis results and expert knowledge rules, program characteristics are
extracted to assist the search for optimal configurations of the control
points. We have implemented the PICS control system in Charm++, an
asynchronous message-driven parallel programming model. We demonstrate the
utility of PICS with several benchmarks and a real-world application
and show its effectiveness.
People
Research Areas