presented by: sameer kulkarni dept of computer & information sciences university of delaware
DESCRIPTION
Presented by: Sameer Kulkarni Dept of Computer & Information Sciences University of Delaware. Improving Both the Performance Benefits and Speed of Optimization Phase Sequence Searches- Kulkarni, Jantz and Whalley. Terms used. Phase Ordering Genetic Algorithms Performance measurements - PowerPoint PPT PresentationTRANSCRIPT
CISC 879 - Machine Learning for Solving Systems Problems
Presented by: Sameer KulkarniDept of Computer & Information Sciences
University of Delaware
Improving Both the Performance Benefits and Speed of Optimization
Phase Sequence Searches- Kulkarni, Jantz and Whalley
CISC 879 - Machine Learning for Solving Systems Problems
Terms used
• Phase Ordering• Genetic Algorithms• Performance measurements• Benchmarks• Search granularity
CISC 879 - Machine Learning for Solving Systems Problems
Introduction
• Function vs. program level Granularity• Embedded Systems
• Emulation• Cost benefits
• Hybrid Search
CISC 879 - Machine Learning for Solving Systems Problems
Ideal Solution?
• Oracle Perfect sequence at the very start
• Wise Man Solution Given the present code predict the best optimization solution
CISC 879 - Machine Learning for Solving Systems Problems
Wise Man
?• Understand
Compilers
• Optimizations
• Source Code
CISC 879 - Machine Learning for Solving Systems Problems
Possible Solutions• Pruning the search space
• Genetic Algorithms
• Estimating running times
• Precompiled choices
CISC 879 - Machine Learning for Solving Systems Problems
Genetic Algorithms
Fast Searches for Effective Optimization Phase Sequences, Kulkarni et al. PLDI ‘04
CISC 879 - Machine Learning for Solving Systems Problems
Exhaustive vs Heuristic [2]
CISC 879 - Machine Learning for Solving Systems Problems
Related Work
• Genetic Algorithms• Other Evolutionary Techniques
• HMMs (CGO 06)• Other Statistical methods
• Optimization Space Exploration
CISC 879 - Machine Learning for Solving Systems Problems
Present work
• Granularity• Function Level• File Level• Program Level• Hybrid
CISC 879 - Machine Learning for Solving Systems Problems
Experimental Setup
• VPO (Very Portable Optimizer)• Base Genetic Algorithm• Redundancy elimination
CISC 879 - Machine Learning for Solving Systems Problems
VPO
• Single IR• Simplified phase ordering• Configurable/modifiable
CISC 879 - Machine Learning for Solving Systems Problems
Redundancy Elimination
• Identical Sequence• Identical Active Sequence• Identical Function instance• Equivalent Function
Instance
CISC 879 - Machine Learning for Solving Systems Problems
Improvement…?
120 days > 12.5 days
CISC 879 - Machine Learning for Solving Systems Problems
Granularities Studied…
• Function Level
• File Level
• Program Level
• Hybrid
…all compared to batch compilation
CISC 879 - Machine Learning for Solving Systems Problems
Graphs, graphs and more graphs…
CISC 879 - Machine Learning for Solving Systems Problems
Search Requirements
http://www.ittc.ku.edu/~kulkarni/research/papers/lctes59f-preprint.pdf
CISC 879 - Machine Learning for Solving Systems Problems
Are they any good?
http://www.ittc.ku.edu/~kulkarni/research/papers/lctes59f-preprint.pdf
CISC 879 - Machine Learning for Solving Systems Problems
Performance ??
http://www.ittc.ku.edu/~kulkarni/research/papers/lctes59f-preprint.pdf
CISC 879 - Machine Learning for Solving Systems Problems
Future Work• Other machine learning algorithms• Reduce granularity• Use a cluster to reduce search /
learning time
CISC 879 - Machine Learning for Solving Systems Problems
Conclusion• Reduced search overhead
CISC 879 - Machine Learning for Solving Systems Problems
Questions