SEER: Super-Optimization Explorer for HLS using E-graph Rewriting with MLIR
High-level synthesis (HLS) is a process that automatically translates a software program in a high-level language into a low-level hardware description. However, the hardware designs produced by HLS tools still suffer from a significant performance gap compared to manual implementations. This is because the input HLS programs must still be written using hardware design principles. Existing techniques either leave the program source unchanged or perform a fixed sequence of source transformation passes, potentially missing opportunities to find the optimal design. We propose a super-optimization approach for HLS that automatically rewrites an arbitrary software program into efficient HLS code that can be used to generate an optimized hardware design. We developed a toolflow named SEER, based on the e-graph data structure, to efficiently explore equivalent implementations of a program at scale. SEER provides an extensible framework, orchestrating existing software compiler passes and hardware synthesis optimizers. Our work is the first attempt to exploit e-graph rewriting for large software compiler frameworks, such as MLIR. Across a set of open-source benchmarks, we show that SEER achieves up to 38x the performance within 1.4x the area of the original program. Via an Intel-provided case study, SEER demonstrates the potential to outperform manually optimized designs produced by hardware experts.
Code (0)
등록된 구현이 없습니다.
Tasks
High-Level SynthesisMethods 이 논문이 사용한 방법론
Similar Papers 제목 키워드 기반
Using Unsupervised Learning to Help Discover the Causal Graph
The software outlined in this paper, AitiaExplorer, is an exploratory causal analysis tool which uses unsupervised learning for feature selection in order to expedite causal discovery. In this paper the problem space of …
Causal Discoveryfeature selectionForeSeer: Product Aspect Forecasting Using Temporal Graph Embedding
Developing text mining approaches to mine aspects from customer reviews has been well-studied due to its importance in understanding customer needs and product attributes. In contrast, it remains unclear how to predict t…
Graph EmbeddingLink PredictionGT-SEER: Geo-Temporal SEquential Embedding Rank for Point-of-interest Recommendation
Point-of-interest (POI) recommendation is an important application in location-based social networks (LBSNs), which learns the user preference and mobility pattern from check-in sequences to recommend POIs. However, prev…
Recommendation SystemsPolynomial Contrastive Learning for Privacy-Preserving Representation Learning on Graphs
Self-supervised learning (SSL) has emerged as a powerful paradigm for learning representations on graph data without requiring manual labels. However, leading SSL methods like GRACE are fundamentally incompatible with pr…
Graph Representation LearningSelf-Supervised LearningContrastive LearningBatch Virtual Adversarial Training for Graph Convolutional Networks
We present batch virtual adversarial training (BVAT), a novel regularization method for graph convolutional networks (GCNs). BVAT addresses the shortcoming of GCNs that do not consider the smoothness of the model's outpu…
General ClassificationNode Classification