Litcius/Paper detail

Sherlock: A Multi-Objective Design Space Exploration Framework

Q Gautier, Alric Althoff, Christopher L. Crutchfield, Ryan Kastner

2022ACM Transactions on Design Automation of Electronic Systems27 citationsDOIOpen Access PDF

Abstract

Design space exploration (DSE) provides intelligent methods to tune the large number of optimization parameters present in modern FPGA high-level synthesis tools. High-level synthesis parameter tuning is a time-consuming process due to lengthy hardware compilation times—synthesizing an FPGA design can take tens of hours. DSE helps find an optimal solution faster than brute-force methods without relying on designer intuition to achieve high-quality results. Sherlock is a DSE framework that can handle multiple conflicting optimization objectives and aggressively focuses on finding Pareto-optimal solutions. Sherlock integrates a model selection process to choose the regression model that helps reach the optimal solution faster. Sherlock designs a strategy based around the multi-armed bandit problem, opting to balance exploration and exploitation based on the learned and expected results. Sherlock can decrease the importance of models that do not provide correct estimates, reaching the optimal design faster. Sherlock is capable of tailoring its choice of regression models to the problem at hand, leading to a model that best reflects the application design space. We have tested the framework on a large dataset of FPGA design problems and found that Sherlock converges toward the set of optimal designs faster than similar frameworks.

Topics & Concepts

Computer scienceIntuitionDesign space explorationField-programmable gate arrayProcess (computing)Pareto optimalOptimal designSet (abstract data type)Mathematical optimizationEngineering design processMulti-objective optimizationMachine learningEmbedded systemMathematicsProgramming languageEngineeringEpistemologyPhilosophyMechanical engineeringAdvanced Multi-Objective Optimization AlgorithmsVLSI and FPGA Design TechniquesProbabilistic and Robust Engineering Design