paper-with-me

Papers

mlirSynth: Automatic, Retargetable Program Raising in Multi-Level IR using Program Synthesis

2023-10-06 · Alexander Brauckmann, Elizabeth Polgreen, Tobias Grosser, Michael F. P. O'Boyle

MLIR is an emerging compiler infrastructure for modern hardware, but existing programs cannot take advantage of MLIR's high-performance compilation if they are described in lower-level general purpose languages. Consequently, to avoid programs needing to be rewritten manually, this has led to efforts to automatically raise lower-level to higher-level dialects in MLIR. However, current methods rely on manually-defined raising rules, which limit their applicability and make them challenging to maintain as MLIR dialects evolve. We present mlirSynth -- a novel approach which translates programs from lower-level MLIR dialects to high-level ones without manually defined rules. Instead, it uses available dialect definitions to construct a program space and searches it effectively using type constraints and equivalences. We demonstrate its effectiveness \revi{by raising C programs} to two distinct high-level MLIR dialects, which enables us to use existing high-level dialect specific compilation flows. On Polybench, we show a greater coverage than previous approaches, resulting in geomean speedups of 2.5x (Intel) and 3.4x (AMD) over state-of-the-art compilation flows for the C programming language. mlirSynth also enables retargetability to domain-specific accelerators, resulting in a geomean speedup of 21.6x on a TPU.

📄 PDF Abstract BibTeX arXiv:2310.04196

Code (0)

등록된 구현이 없습니다.

Tasks

Program Synthesis

Similar Papers 제목 키워드 기반

Parametrically Retargetable Decision-Makers Tend To Seek Power

2022-06-27 · Alexander Matt Turner, Prasad Tadepalli

If capable AI agents are generally incentivized to seek power in service of the objectives we specify for them, then these systems will pose enormous risks, in addition to enormous benefits. In fully observable environme…

Decision MakingMontezuma's Revenge

StatWhy: Formal Verification Tool for Statistical Hypothesis Testing Programs

2024-05-25 · Yusuke Kawamoto, Kentaro Kobayashi, Kohei Suenaga

Statistical methods have been widely misused and misinterpreted in various scientific fields, raising significant concerns about the integrity of scientific research. To mitigate this problem, we propose a tool-assisted …

Code Summarization: Do Transformers Really Understand Code?

2022-01-16 · ACL ARR January 2022 1 · Anonymous

Recent approaches for automatic code summarization rely on fine-tuned transformer based language Models often injected with program analysis information. We perform empirical studies to analyze the extent to which these …

Code Summarization

Beyond the C: Retargetable Decompilation using Neural Machine Translation

2022-12-17 · Iman Hosseini, Brendan Dolan-Gavitt

The problem of reversing the compilation process, decompilation, is an important tool in reverse engineering of computer software. Recently, researchers have proposed using techniques from neural machine translation to a…

C++ codeMachine TranslationTranslation

Analyzing Büchi Automata with Graph Neural Networks

2022-06-20 · Christophe Stammet, Prisca Dotti, Ulrich Ultes-Nitsche, Andreas Fischer

B\"uchi Automata on infinite words present many interesting problems and are used frequently in program verification and model checking. A lot of these problems on B\"uchi automata are computationally hard, raising the q…