advancing the compiler community’s research agenda with archiving and repeatability
DESCRIPTION
Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability. Mary Hall May 25, 2010. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/1.jpg)
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.
![Page 2: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/2.jpg)
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
![Page 3: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/3.jpg)
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
![Page 4: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/4.jpg)
May 25, 2010
Actions
4
![Page 5: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/5.jpg)
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
![Page 6: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/6.jpg)
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)
![Page 7: Advancing the Compiler Community’s Research Agenda with Archiving and Repeatability](https://reader035.vdocuments.us/reader035/viewer/2022070410/568145b2550346895db2b5e9/html5/thumbnails/7.jpg)
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