19
CISC 879 - Machine Learning for Solving Systems Problems Microarchitecture Design Space Exploration Lecture 4 John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879

Microarchitecture Design Space Exploration Lecture 4

Embed Size (px)

DESCRIPTION

Microarchitecture Design Space Exploration Lecture 4. John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879. Recent ARM Processor. Increasingly large number of interesting design points. Architecture Simulation. - PowerPoint PPT Presentation

Citation preview

Page 1: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Microarchitecture Design Space Exploration

Lecture 4

John CavazosDept of Computer & Information Sciences

University of Delaware

www.cis.udel.edu/~cavazos/cisc879

Page 2: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Recent ARM Processor

Increasingly large number of interesting design points.

Page 3: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Architecture Simulation

Cycle-accurate simulation

– Accurately captures trends in design space

– Estimates various metrics (e.g., power, performance)

Challenges with simulation

– Accurate simulation very slow

– Number of simulations grows very quickly with number of parameters (e.g., cache size, issue width) considered

Page 4: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Why do Predictive Modeling?

Exploring architectural design spaces is hard

– Accurate simulation very slow

– Number of simulations grows very quickly with number of parameters (e.g., cache size, issue width) considered

With Predictive Modeling

– Small number of simulations to train a model, rest of space is predicted

– Even smaller number with cross-program prediction!

Page 5: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Speeding up simulation

Reduce Input Sizes

– Reduces costs of simulation with smaller inputs

Reduce Instructions Simulated

– Sampling of instructions (“hot code”)

– Sampled trace from phases

Reduce Simulated Configurations

– Sample small number of points from design space

Page 6: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Predictive Modeling

Effectively use sparsely sampled simulated design space

Uses simulated parts of space as training data

Models predict metric of interest (e.g., performance, energy)

1.45

Page 7: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Digression into Regression

Suppose you have a set of data (xi,yi) and you want to see if a linear relationship exists between x and y. y = mx + b

Page 8: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Regression with 1 variable

Source: http://en.wikipedia.org/wiki/Linear_regression

Page 9: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Linear Regression

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 10: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Applying Predictive Models

►Inputs

►Architecture configuration

►Outputs

►Metric to predict

►E.g., performance relative to a “baseline”

Page 11: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Inputs

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 12: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Experimental Methodology

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 13: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Model Validation

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 14: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Regional Sampling

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 15: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Performance Prediction

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 16: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Power Prediction

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf

Page 17: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Tools Available

• CORE :: Comprehensive Optimization via Regression Estimates• Architecture DSE data sets

• Statistical scripts to perform analysis

http://www.stanford.edu/~bcclee/software.html

Page 18: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Tools Available (cont’d)

• Fusion Predictive Modeling Tools• Tools for application performance

prediction

• Available upon request

http://fusion.csl.cornell.edu/tools/fpmt.html

Page 19: Microarchitecture  Design Space Exploration Lecture 4

CISC 879 - Machine Learning for Solving Systems Problems

Conclusions

Source: http://www.stanford.edu/~bcclee/documents/lee2006-asplos-slides.pdf