Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability
description
Transcript of Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability
May 25, 2010
Mary HallMay 25, 2010
Advancing the Compiler Community’s Research Agenda
withArchiving and Repeatability
* This work has been partially sponsored by DOE SciDAC as part of the Performance Engineering Research Institute (PERI), DOE Office of Science, the National Science Foundation, DARPA and Intel Corporation.
May 25, 2010
Observations
• Communities that are most successful at archiving experiments – Use a common set of tools or are part of large
efforts;– Or, use a common interface
• Therefore, dependences on platform and software have been mitigated.
• Some are working on a “Grand Challenge” problem.
2
May 25, 2010
Challenges1. Findings may depend on details of the underlying system: • source‐to‐source transformation has dependence on the version of the
native compiler; • parallel performance has dependences on the run‐time layer and OS
scheduling policy; • changes in hardware generations may shift impact of optimizations.
2. Monolithic compiler infrastructures impede direct comparisons:
• Experimental infrastructure may be hundreds of thousands of lines of code, poorly documented, and fragile.
3. Standard of publishing is fastpaced, focused on conferences and workshops:
• Researchers get more recognition from publishing exciting new ideas as opposed to following through on bigger, older ideas.
3
May 25, 2010
Actions
4
May 25, 2010 5
My Research: Restructure Compiler
BatchCompiler
code
input data
Traditional view:
Code Translation
code
input data
(characteristics)
Autotuning Compiler:
search script(s)
transformationscript(s)
Experiments Engine
May 25, 2010
DOE SciDAC Performance Engineering Research Institute (PERI): Autotuning
Tools Only
HPC Toolkit (Rice)ROSE (LLNL)
CHiLL (USC/ISI and Utah)ROSE (LLNL)Orio (Argonne) {
OSKI (LBNL)
Active Harmony (UMD)GCO (UTK)
PerfTrack (LBNL, SDSC, RENCI)
May 25, 2010
Application Source Files
Application Source Files
• Kernel extraction
• Kernel extraction
ROSE
Executable
Kernels
Executable
Kernels
Tuned Applicatio
n
Tuned Applicatio
n
• Empirical search
• Empirical search
ActiveHarmony,GCO, Orio
Kernelvariant
s
Kernelvariant
s
• Analysis• Transformations• Code generation
• Analysis• Transformations• Code generation
CHiLL, Orio, OSKI, ROSE
• Performance measurements
• Performance measurements
ROSE, HPCToolkit
Performance Data
Common APIs enable composing systems
common search API
common transforma
tion API
Exchange information between tools via APIs
PERI XML