Our research focuses on the location and explanation of performance problems in parallel programs, a task that we call performance diagnosis. Researchers have developed many software tools to collect and analyze data for performance diagnosis, but many obstacles prevent such tools from practically benefiting parallel programmers. Two obstacles in particular motivate our current work:
Both of these obstacles, we believe, could be mitigated by a formal theory of performance diagĀnosis processes. This article summarizes such a theory, and proposes a research collaboration to evaluate that theory against actual programming practices.