Predictive Design Space Exploration Using Genetically Programmed Response Surfaces Henry Cook Department of Electrical Engineering and Computer Science.

Slides:



Advertisements
Similar presentations
Chapter 3 Embedded Computing in the Emerging Smart Grid Arindam Mukherjee, ValentinaCecchi, Rohith Tenneti, and Aravind Kailas Electrical and Computer.
Advertisements

Artificial Intelligence Presentation
Combining Statistical and Symbolic Simulation Mark Oskin Fred Chong and Matthew Farrens Dept. of Computer Science University of California at Davis.
1 A Self-Tuning Cache Architecture for Embedded Systems Chuanjun Zhang*, Frank Vahid**, and Roman Lysecky *Dept. of Electrical Engineering Dept. of Computer.
2003 Fall SIW The Process for Coercing Simulations Sarah Waziruddin, University of Virginia David Brogan, University of Virginia Paul Reynolds, University.
U NIVERSITY OF D ELAWARE C OMPUTER & I NFORMATION S CIENCES D EPARTMENT Mitigating the Compiler Optimization Phase- Ordering Problem using Machine Learning.
Optimal Design Laboratory | University of Michigan, Ann Arbor 2011 Design Preference Elicitation Using Efficient Global Optimization Yi Ren Panos Y. Papalambros.
Biologically Inspired AI (mostly GAs). Some Examples of Biologically Inspired Computation Neural networks Evolutionary computation (e.g., genetic algorithms)
Institute of Intelligent Power Electronics – IPE Page1 Introduction to Basics of Genetic Algorithms Docent Xiao-Zhi Gao Department of Electrical Engineering.
Chapter 4 DECISION SUPPORT AND ARTIFICIAL INTELLIGENCE
Object Recognition Using Genetic Algorithms CS773C Advanced Machine Intelligence Applications Spring 2008: Object Recognition.
Eng 101 – Seeds of Success Social and Ethical Implications of Artificial Intelligence Daniel Tauritz, Ph.D. Associate Professor of Computer Science.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
CS 447 Advanced Topics in Artificial Intelligence Fall 2002.
Automatic Tuning of Two-Level Caches to Embedded Applications Ann Gordon-Ross and Frank Vahid* Department of Computer Science and Engineering University.
Image Registration of Very Large Images via Genetic Programming Sarit Chicotay Omid E. David Nathan S. Netanyahu CVPR ‘14 Workshop on Registration of Very.
1 Prediction of Software Reliability Using Neural Network and Fuzzy Logic Professor David Rine Seminar Notes.
Exploring the Tradeoffs of Configurability and Heterogeneity in Multicore Embedded Systems + Also Affiliated with NSF Center for High- Performance Reconfigurable.
Operations Research Models
A Genetic Algorithms Approach to Feature Subset Selection Problem by Hasan Doğu TAŞKIRAN CS 550 – Machine Learning Workshop Department of Computer Engineering.
Genetic Algorithms and Ant Colony Optimisation
Efficient Model Selection for Support Vector Machines
An Analytical Performance Model for Co-Management of Last-Level Cache and Bandwidth Sharing Taecheol Oh, Kiyeon Lee, and Sangyeun Cho Computer Science.
COMP3503 Intro to Inductive Modeling
Meta Optimization Improving Compiler Heuristics with Machine Learning Mark Stephenson, Una-May O’Reilly, Martin Martin, and Saman Amarasinghe MIT Computer.
Dept. of Computer and Information Sciences : University of Delaware John Cavazos Department of Computer and Information Sciences University of Delaware.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
The Particle Swarm Optimization Algorithm Nebojša Trpković 10 th Dec 2010.
Various topics Petter Mostad Overview Epidemiology Study types / data types Econometrics Time series data More about sampling –Estimation.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
A Single-Pass Cache Simulation Methodology for Two-level Unified Caches + Also affiliated with NSF Center for High-Performance Reconfigurable Computing.
Industrial Data Modeling with DataModeler Mark Kotanchek Evolved Analytics
Modeling in Computer Architecture Matthew Jacob. Architecture Evaluation Challenges Skadron, Martonosi, August, Hill, Lilja and Pai, IEEE Computer, Aug.
BOĞAZİÇİ UNIVERSITY DEPARTMENT OF MANAGEMENT INFORMATION SYSTEMS MATLAB AS A DATA MINING ENVIRONMENT.
“Isolating Failure Causes through Test Case Generation “ Jeremias Rößler Gordon Fraser Andreas Zeller Alessandro Orso Presented by John-Paul Ore.
Patch Based Prediction Techniques University of Houston By: Paul AMALAMAN From: UH-DMML Lab Director: Dr. Eick.
Thermal-aware Phase-based Tuning of Embedded Systems + Also Affiliated with NSF Center for High- Performance Reconfigurable Computing This work was supported.
CITS7212: Computational Intelligence An Overview of Core CI Technologies Lyndon While.
Reservoir Uncertainty Assessment Using Machine Learning Techniques Authors: Jincong He Department of Energy Resources Engineering AbstractIntroduction.
Optimization Problems
Automated discovery in math Machine learning techniques (GP, ILP, etc.) have been successfully applied in science Machine learning techniques (GP, ILP,
Alice E. Smith and Mehmet Gulsen Department of Industrial Engineering
Case Selection and Resampling Lucila Ohno-Machado HST951.
1 Chapter 4: Introduction to Predictive Modeling: Regressions 4.1 Introduction 4.2 Selecting Regression Inputs 4.3 Optimizing Regression Complexity 4.4.
CISC Machine Learning for Solving Systems Problems Microarchitecture Design Space Exploration Lecture 4 John Cavazos Dept of Computer & Information.
Nonlinear differential equation model for quantification of transcriptional regulation applied to microarray data of Saccharomyces cerevisiae Vu, T. T.,
CISC Machine Learning for Solving Systems Problems Presented by: Eunjung Park Dept of Computer & Information Sciences University of Delaware Solutions.
Evolving RBF Networks via GP for Estimating Fitness Values using Surrogate Models Ahmed Kattan Edgar Galvan.
Identifying “Best Bet” Web Search Results by Mining Past User Behavior Author: Eugene Agichtein, Zijian Zheng (Microsoft Research) Source: KDD2006 Reporter:
1 Autonomic Computer Systems Evolutionary Computation Pascal Paysan.

Advanced AI – Session 6 Genetic Algorithm By: H.Nematzadeh.
MEER 111 – Global Research Solving Real-World Problems with Evolutionary Algorithms Daniel Tauritz, Ph.D. Associate Professor of Computer Science.
Warehouse Lending Optimization Paul Parker (2016).
Optimization Problems
Evolutionary Algorithms Jim Whitehead
Evolution Strategies Evolutionary Programming
School of Computer Science & Engineering
C.-S. Shieh, EC, KUAS, Taiwan
Table 1. Advantages and Disadvantages of Traditional DM/ML Methods
CSE 4705 Artificial Intelligence
Solve a system of linear equation in two variables
CSc4730/6730 Scientific Visualization
Optimization Problems
Christophe Dubach, Timothy M. Jones and Michael F.P. O’Boyle
Overfitting and Underfitting
Automatic Tuning of Two-Level Caches to Embedded Applications
Memory-Based Learning Instance-Based Learning K-Nearest Neighbor
Phase based adaptive Branch predictor: Seeing the forest for the trees
Some issues of design philosophy…
Presentation transcript:

Predictive Design Space Exploration Using Genetically Programmed Response Surfaces Henry Cook Department of Electrical Engineering and Computer Science University of California, Berkeley Kevin Skadron Department of Computer Science University of Virginia

Designs Are Growing More Complex More transistors = more complex designs Superscalar, out-of-order execution Chip multiprocessors, systems-on-a-chip Heterogeneity, shared memory, interconnects… Many interrelated design variables with emergent interactions Unclear whether analytic models can be constructed based on a priori understanding

How can we find the best design? Detailed, cycle-accurate simulations Testing every option is time consuming 1 min. x 1 billion simulations = too long! Even search requires too many simulations Solution: Predict which designs are best based on a small data sample

Why not heuristic search? Every step of search requires at least one full simulation How many steps? Predicting based on a predetermined sample becomes increasingly efficient as space grows Assuming predictions are accurate Assuming sample is small enough

How can we address complexity? We need a tool to predict global performance based on a data sample Many techniques might do this, but we want to use one that… Is more accurate when using small samples Finds the true optimal solutions Gives the architect more insight Not just ‘what’ the best answer is, but also ‘why’ it is the best

How can we make predictions? Build a ‘response surface’ A function that relates design choices to a performance measure Predicts performance for designs we did not ever simulate Must have high accuracy to be useful

A simple response surface Linear Regression:

A simple response surface Linear Regression:

A simple response surface Linear Regression:

A simple response surface Non-linear models are more precise:

How to use response surfaces The true performance data:

How to use response surfaces Step 1: Run simulations to make a sample

How to use response surfaces Step 2: Build the response surface

How to use response surfaces Step 3: Predict which designs are optimal

How can we build the surface? Linear/polynomial regression Artificial neural networks Genetic Programming Automated Robust Insightful

Genetic Programming Creates non-linear, polynomial functions which match sample data Previous uses Calcination of cement Stress fractures in steel Branch prediction strategy Evolutionary algorithm Natural selection Survival of the fittest

Remove lowest quality individuals Recombine best individuals Evaluate fitness of new individuals Evolution and reproduction Result: Explicit response surface functions which best match data

Evolution and reproduction Expression trees define the structure of the response surface equation Tuning parameters provide best possible fit to collected data Candidates are evaluated based on distance of predictions from sample after tuning

Combine Evolution and reproduction

Proving the GP technique Ipek et. al (ASPLOS-XII) 12 design choices, 20K+ possible designs Predicted IPC and cache performance of 11 applications Lee and Brooks (ASPLOS-XII) 13 design choices, 1 billion+ possible designs Predicted power and BIPS of 7 applications Took simulation data from previous studies Designs are realistic but (comparatively) simple

How good are the predictions? 0.1% of possible designs Branch prediction and L2 cache miss rate <1% mean error and <2% s.d. Instructions per cycle % mean error, % s.d % of possible designs Billions of instructions per second % mean, % s.d. Power (W) % mean, % s.d.

How good are the predictions? CDFs of prediction accuracy of BIPS/IPC

How good are the predictions? Global prediction accuracy of IPC performance for 11 applications. Sample size was only 0.25%.

How good are the predictions? CDFs of prediction accuracy for Ipek

How good are the predictions? CDFs of prediction accuracy of BIPS for Lee

How good are the predictions? Localized accuracy of IPC for Ipek

Can we find optimal designs? Surface allows us to solve for the best values for some variables analytically Other variables have insignificant impact When checked by exhaustive search, for most benchmarks 100% of the optimal designs had the analytically determined values Worst design with those values still had performance that was 97% of optimal

How does the technique help architects? Saves time Creates response function automatically Only need to simulate predetermined sample points High accuracy means confidence in predictions Provides insight Which design choices are important What the correct choices are

Limitations Time to construct response surface via GPRS rather than with ANNs Hours rather than minutes on this space Still just an up front cost on the order of a single simulation Feedback is an explicit, analytic expression How to determine quality without exhaustive search? Cross validation

Questions? Thanks to John Lach, Paul Reynolds, Sally McKee, David Brooks, Karan Singh, Benjamin Lee