Summary
Real-world engineering problems commonly have multiple objectives that have to be tuned simultaneously. The trade-off Pareto front resulting from the tuning is used as a decision-making tool for selecting the best trade-off for any specific user scenario. Specifically, multi-objective optimization is a crucial matter in programming languages, compilers and hardware design space exploration (DSE) because real-world applications often rely on a trade-off between several objectives such as throughput, latency, memory usage, energy, area, etc.
While the growing demand for sophisticated DSE methods has triggered the development of a wide range of approaches and frameworks, none to date are featured enough to fully address the complexities of DSE in the PL/compilers domain. To address this problem, we introduce a new methodology and a framework dubbed HyperMapper. HyperMapper is a machine learning-based tool designed for the computer systems community and can handle design spaces consisting of multiple objectives and numerical/discrete variables. Emphasis is on exploiting user prior knowledge via modeling of the design space parameters distributions. Given the years of hand-tuning experience in optimizing hardware, designers bear a high level of confidence. HyperMapper gives means to inject knowledge in the search algorithm. The framework uses a Bayesian Optimization algorithm, i.e., construct and utilize a surrogate model of the latent function to guide the search process. A key advantage of having a model is the reduction of the optimization time budget. HyperMapper is a plug-and-play framework that makes it easy for compiler/hardware designers to explore their search spaces.
To aid the comparison of HyperMapper with other DSE tools, we provide a taxonomy of existing tools.
COVID-19 Update
DSE-2020 will be virtual, like PLDI. See the main PLDI page for news and updates.
Event Video
Program
Total duration: 3 hours. Time is in PDT.
Time | Topic | Speaker | Duration | Slides |
---|---|---|---|---|
8:00 | Introduction | Luigi Nardi | 10 min | link |
8:10 | Design Space Exploration | Luigi Nardi | 30 min | link |
8:40 | Hands-on: HyperMapper Demo | Artur Souza | 25 min | link |
9:05 | Break | 10 min | ||
9:15 | The Spatial programming language and compiler | Matt Feldman | 30 min | link |
9:45 | Hands-on: Spatial Demo | Artur Souza & Matt Feldman | 30 min | Matt / Artur |
10:15 | Break | 10 min | ||
10:25 | DSE advanced topics | Artur Souza | 30 min | link |
10:55 | Discussions/panel - Q&A | All speakers | Flexible | |
Hands-on Material
References
- Practical Design Space Exploration: paper
- Spatial: A language and compiler for application accelerators: paper
Contact
Luigi Nardi: luigi.nardi at cs.lth.se
Twitter: #DSEPLDI
Mon 15 JunDisplayed time zone: Pacific Time (US & Canada) change
08:00 - 12:00 | |||
08:00 4hTutorial | Design Space Exploration Tutorials Matthew Feldman Stanford University, USA, Artur Souza Universidade Federal de Minas Gerais (UFMG), Luigi Nardi Lund University and Stanford University, Kunle Olukotun Stanford University |